Linq to SQL具有中等信任级别

时间:2012-04-09 14:31:14

标签: asp.net linq medium-trust

我在一个ASP.NET应用程序中使用了Linq to SQL,我现在需要在服务器上部署它。不幸的是,托管服务器只能提供中等级别的信任。我的应用程序崩溃没有类型ReflectionPermission的许可。

有没有办法编辑我的查询以解决此限制?

例如,我的应用在调用此代码时崩溃:

Error error = new Error { Date = DateTime.Now, Message = message, StackTrace = stack };
dataContext.Errors.InsertOnSubmit(error);
dataContext.SubmitChanges();

感谢。

1 个答案:

答案 0 :(得分:1)

这可能是由ReflectionPermission.RestrictedMemberAccess属性引起的。

确保EF模型类中的每个属性都是公共的。

我遇到了一个更复杂的问题,但可能与你的情况类似。 我在我的EF模型类中聚合了一个具有私有属性的类。 在加载期间,来自DB的任何记录,EF也会尝试从此聚合类加载每个属性。

从我的一个模型类中删除此引用(并通过复制所需的属性替换它)解决了中等信任环境中的问题。