/// <summary>
        /// Returns schema information for each property on
        /// the object.
        /// </summary>
        /// <remarks>All public properties on the object
        /// will be reflected in this schema list except
        /// for those properties where the
        /// <see cref="BrowsableAttribute">Browsable</see> attribute
        /// is False.
        /// </remarks>
        public IDataSourceFieldSchema[] GetFields()
        {
            List <ObjectFieldInfo> result =
                new List <ObjectFieldInfo>();

            string originalPath = GetOriginalPath(
                _typeAssemblyName, _typeName);

            System.Security.NamedPermissionSet fulltrust =
                new System.Security.NamedPermissionSet("FullTrust");
            AppDomain tempDomain = AppDomain.CreateDomain(
                "__temp",
                AppDomain.CurrentDomain.Evidence,
                AppDomain.CurrentDomain.SetupInformation,
                fulltrust,
                new System.Security.Policy.StrongName[] { });

            try
            {
                // load the TypeLoader object in the temp AppDomain
                Assembly   thisAssembly = Assembly.GetExecutingAssembly();
                TypeLoader loader       =
                    (TypeLoader)tempDomain.CreateInstanceFromAndUnwrap(
                        thisAssembly.CodeBase, typeof(TypeLoader).FullName);

                //// load the business type in the temp AppDomain
                //Type t = loader.GetType(
                //  _typeAssemblyName, _typeName);

                //// load the metadata from the Type object
                //if (typeof(IEnumerable).IsAssignableFrom(t))
                //{
                //  // this is a list so get the item type
                //  t = Utilities.GetChildItemType(t);
                //}
                //PropertyDescriptorCollection props =
                //  TypeDescriptor.GetProperties(t);
                //foreach (PropertyDescriptor item in props)
                //  if (item.IsBrowsable)
                //    result.Add(new ObjectFieldInfo(item));
                result = loader.GetFields(
                    originalPath, _typeAssemblyName, _typeName);
            }
            finally
            {
                AppDomain.Unload(tempDomain);
            }
            return(result.ToArray());
        }
Esempio n. 2
0
 public System.Security.NamedPermissionSet RemoveNamedPermissionSet(System.Security.NamedPermissionSet permSet)
 {
     return(default(System.Security.NamedPermissionSet));
 }
Esempio n. 3
0
 public void AddNamedPermissionSet(System.Security.NamedPermissionSet permSet)
 {
 }
Esempio n. 4
0
 public System.Security.NamedPermissionSet RemoveNamedPermissionSet(System.Security.NamedPermissionSet permSet)
 {
 }
        public System.Security.NamedPermissionSet RemoveNamedPermissionSet(System.Security.NamedPermissionSet permSet)
        {
            Contract.Requires(permSet != null);

            return(default(System.Security.NamedPermissionSet));
        }
Esempio n. 6
0
 public NamedPermissionSet(System.Security.NamedPermissionSet permSet) : base(default(System.Security.Permissions.PermissionState))
 {
 }
 public NamedPermissionSet(System.Security.NamedPermissionSet permSet)
 {
     Contract.Requires(permSet != null);
 }