Домен приложения - это изолированная среда, в которой сборки Microsoft .NET могут быть помещены в «песочницу», предоставлены определенные разрешения или PermissionSets и выполнены.

Определение:

AppDomain представляет домен приложения, в котором скомпилированные сборки Microsoft .NET могут быть изолированы от других сборок (либо в корневом приложении или другом отдельном домене приложений). Хотя домены приложений обычно используются для изолированной программной среды от стороннего или ненадежного кода, их также можно использовать для отделения кода от основного процесса, чтобы предотвратить потенциальную нестабильность в определенном сегменте приложения.

Использование тегов:

Тег appdomain следует использовать при обращении к проблемам, связанным с классом System.AppDomain в Microsoft .NET, или к проблемам удаленного взаимодействия или обработки.

Пример (C #):

namespace AppDomainExample { using System; using System.IO; using System.Reflection; using System.Security; using System.Security.Permissions; using System.Security.Policy; class Program { static void Main(string[] args) { PermissionSet ps = new PermissionSet(PermissionState.None); ps.AddPermission(new SecurityPermission(SecurityPermissionFlag.Execution)); ps.AddPermission(new FileIOPermission(FileIOPermissionAccess.Write, @"C:\")); var assembly = Assembly.GetExecutingAssembly(); AppDomainSetup ads = new AppDomainSetup(); ads.ApplicationBase = Path.GetFullPath(assembly.Location); StrongName fullTrustAssemblies = assembly.Evidence.GetHostEvidence<StrongName>(); AppDomain domain = AppDomain.CreateDomain("foo", null, ads, ps, fullTrustAssemblies); } } }