C# “应用程序试图执行安全策略不允许的操作。”可能的信任问题?

C# “应用程序试图执行安全策略不允许的操作。”可能的信任问题?,c#,asp.net,asp.net-mvc,web-hosting,cas,C#,Asp.net,Asp.net Mvc,Web Hosting,Cas,完整的信息是 应用程序试图执行应用程序不允许的操作 安全政策。授予此应用程序所需的权限 请与系统管理员联系或更改应用程序的 配置文件中的信任级别 我最近上传了一个MVC应用程序到Fasthosts托管的站点 应用程序在VS中本地运行良好,但在服务器上运行不好 它最初给出了关于启用远程错误消息的消息,因此我将其添加到配置文件中,该文件最初停止了此操作 然后我看到了上面的错误消息,所以在谷歌搜索之后我添加到了,但是我收到了另一条消息,说主机已经禁用了这个功能 问题是,这个应用程序没有什么不寻常的地方

完整的信息是

应用程序试图执行应用程序不允许的操作 安全政策。授予此应用程序所需的权限 请与系统管理员联系或更改应用程序的 配置文件中的信任级别

我最近上传了一个MVC应用程序到Fasthosts托管的站点

应用程序在VS中本地运行良好,但在服务器上运行不好

它最初给出了关于启用远程错误消息的消息,因此我将其添加到配置文件中,该文件最初停止了此操作

然后我看到了上面的错误消息,所以在谷歌搜索之后我添加到了,但是我收到了另一条消息,说主机已经禁用了这个功能

问题是,这个应用程序没有什么不寻常的地方;这只是一个非常基本的MVC应用程序。它不会在当前文件夹结构之外的任何其他位置使用资源,因此不应该存在任何信任问题

这个问题也被夸大了,因为似乎存在某种服务器端缓存问题

该部分当前看起来如下所示:

  <system.web>
    <customErrors mode="Off" />
    <trust level="Medium" />
    <compilation targetFramework="4.5.2" />
    <httpRuntime targetFramework="4.5.2" maxRequestLength="1048576" />
  </system.web>
public ActionResult Index(int vehicleId = 0)
{
    ViewBag.VehicleId = vehicleId;
    return View();
}
该视图只是一堆HTML,带有一些辅助方法,其中一个方法如下,其他方法只是不同的实体,其他方法的代码相同:

public static MvcHtmlString Manufacturers(string id = "manufacturers", string className = "", string style = "", string optionClass = "", string optionStyle = "", int selectedValue = 0, bool showSelect = false)
{
    var result = new StringBuilder();
    try
    {
        using (var context = new DB())
        {
            var selected = selectedValue == 0 ? " selected" : "";
            result.Append($"<select id='{id}' class='{className}' style='{style}'>");
            if (showSelect) result.Append($"<option{selected} value='0' disabled='disabled'>(Select)</option>");
            foreach (var manufacturer in context.Manufacturers)
            {
                selected = manufacturer.ManufacturerId == selectedValue ? " selected" : "";
                result.Append($"<option{selected} value='{manufacturer.ManufacturerId}' class='{optionClass}' style='{optionStyle}'>{manufacturer.Name}</option>");
            }
            result.Append("</select>");
        }
    }
    catch (Exception ex)
    {
        result = new StringBuilder(ex.GetBaseException().Message);
    }
    return new MvcHtmlString(result.ToString());
}

我有一张Fasthosts的开放式支持票,但我不相信它会很快得到答复:

在他们说它一定是我的代码后,它原来是主机服务器

我找到了另一个提供商,上传了我的代码,第一次一切正常


有时不是你,而是他们。

我不知道你的问题的答案,但仅供参考,信任更多地关系到代码可以做什么,而不是从哪里加载。例如,在部分信任设置中通常不允许反射。我想这里可以回答这个问题:-我正在检查Fasthosts…不幸的是,Fasthosts支持几乎没有用处。将使用不同的托管提供商。