Пример #1
0
        /// <summary>
        /// Returns a key unique for the given type.
        /// </summary>
        /// <param name="type">The type the key shall be unique to</param>
        /// <param name="partialKey">The partial key to be made unique</param>
        /// <returns>A key formatted as <i>typename.partialkey</i></returns>
        public static string GetTypeScopedString(Type type, string partialKey)
        {
            AssertUtils.ArgumentNotNull(type, "type");
            AssertUtils.ArgumentHasText(partialKey, "partialKey");

            return(GetUniqueKey(type, null, partialKey));
        }
Пример #2
0
        /// <summary>
        /// Returns a key unique for the given instance.
        /// </summary>
        /// <param name="instance">The instance the key shall be unique to</param>
        /// <param name="partialKey">The partial key to be made unique</param>
        /// <returns>A key formatted as <i>typename[instance-id].partialkey</i></returns>
        public static string GetInstanceScopedString(object instance, string partialKey)
        {
            AssertUtils.ArgumentNotNull(instance, "instance");
            AssertUtils.ArgumentHasText(partialKey, "partialKey");

            if (instance is Type)
            {
                throw new ArgumentException(
                          "please use GetUniqueKey(Type,string) for creating type specific keys", "instance");
            }
            return(GetUniqueKey(instance.GetType(), instance, partialKey));
        }
Пример #3
0
        public static void SaveAssembly(string assemblyName)
        {
            AssertUtils.ArgumentHasText(assemblyName, "assemblyName");

            ModuleBuilder module = null;

            lock (s_moduleCache.SyncRoot)
            {
                module = (ModuleBuilder)s_moduleCache[assemblyName];
            }

            if (module == null)
            {
                throw new ArgumentException(string.Format("'{0}' is not a valid dynamic assembly name", assemblyName), "assemblyName");
            }

            AssemblyBuilder assembly = (AssemblyBuilder)module.Assembly;

            throw new NotImplementedException("assembly.Save(assembly.GetName().Name + \".dll\");");
            //assembly.Save(assembly.GetName().Name + ".dll");
        }
Пример #4
0
 public void ArgumentHasText()
 {
     Assert.Throws <ArgumentNullException>(() => AssertUtils.ArgumentHasText(null, "foo"));
 }
Пример #5
0
 public void ArgumentHasTextWithValidTextAndMessage()
 {
     AssertUtils.ArgumentHasText("... and no-one's getting fat 'cept Mama Cas!", "foo", "Bang!");
 }
Пример #6
0
 public void ArgumentHasTextWithMessage()
 {
     Assert.Throws <ArgumentNullException>(() => AssertUtils.ArgumentHasText(null, "foo", "Bang!"));
 }