我正在通过Microsoft .Net Framework - 应用程序开发基础培训工具包第8章第2课:配置应用程序域
ShowWinIni是我想要执行的程序的程序集名称
object[] hostEvidence = { new Zone(SecurityZone.MyComputer) };
Evidence e = new Evidence(hostEvidence, null);
// Create an AppDomain.
AppDomain d = AppDomain.CreateDomain("New Domain", e);
// Run the assembly
d.ExecuteAssemblyByName("ShowWinIni");
Run Code Online (Sandbox Code Playgroud)
当我执行:
AppDomain d = AppDomain.CreateDomain("New Domain", e);
Run Code Online (Sandbox Code Playgroud)
我收到以下消息:"此方法隐式使用CAS策略,已被.NET Framework废弃.为了兼容性原因启用CAS策略,请使用NetFx40_LegacySecurityPolicy配置开关.请参阅http://go.microsoft .com/fwlink /?LinkID = 155570了解更多信息."
当我创建一个没有Evidence对象的AppDomain时,我可以正常执行程序集.
当然,我访问过http://go.microsoft.com/fwlink/?LinkID=155570,但我仍然对如何创建具有指定权限的应用程序域感到困惑.
我找到的下一个最有用的网站是http://msdn.microsoft.com/en-us/library/bb763046.aspx但我的StrongName对象计算为NULL.
StrongName fullTrustAssembly =
typeof(Program).Assembly.Evidence.GetHostEvidence<StrongName>();
Run Code Online (Sandbox Code Playgroud)
程序是实现所有这些代码的类的名称.
提前感谢您的建议和提示!
我什么时候应该使用一个?我想在启动时缓存某个对象并在应用程序周围重用.这听起来像是更好的解决方案(ViewData或Session)?
我正在阅读Itzik Ben-Gan,Lubor Kollar,Dejan Sarka和Steve Kass撰写的有关Codd 在Microsoft SQL Server 2008内部的八个原始运算符:T-SQL查询的内容,并且不了解Divide运算符。
引号定义了Divide运算符:
除数关系用于划分股息关系并产生商关系。商关系由除数表中一列的值组成,第二列包含除数中的所有值。”
该声明与Wikipedia的定义和示例一致。
“为除法运算的计算公式包括三个关系:一个 除以b每Ç,其中一个是被除数,b是除数,并且Ç是介体关系。让关系a具有属性A,关系b具有 属性B。除法运算符返回一个关系,该关系包括除数的所有元组,这样对于除数关系的所有元组,元组{A,B}出现在介体关系中。”
下图用于演示此语句。我相信这些关系按以下顺序表示:分红,除数,调解器和最终结果。

第二个关系(除数)具有用于元组的{a,x},{a,z},{b,x}和{b,z}。我的思考过程如下:由于存在元组{b,x}和{b,z},因此应在最终结果中包括b。我已经在该书的网站上检查了该书的更正(在本文开头链接),并且确定我错了。
为什么图示例a而不是a和b的结果?