c# - ASP.NET MVC 访问被拒绝(检索具有 CLSID 的组件的 COM 类工厂)
问题描述
当我单击一个按钮以通过 jquery 调用在我的控制器中发布一个函数时,我遇到了这个错误:
JS代码:
$.post("/generer", {
lieu: $("#lieu").val(),
date: $("#date").val(),
grade: $("#grade").val(),
nom: $("#nom").val(),
peloton: $("#peloton").val(),
objet: $("#objet").val(),
first_para: $("#first_para").val(),
second_para: $("#second_para").val(),
ordre: $("#ordre").val()
}).done(function (data) {
if(data != "Erreur")
{
file = data;
$("#centerdiv").css("display", "none");
$("#div_m").css("display", "block");
}
else { alert(data);}
});
}
我在控制器中调用的 C# 函数只是打开 un word 文件以将我在 js 脚本中获得的所有数据输入书签。我有一个 RouteConfig 文件:
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "Home",
url: "",
defaults: new { controller = "Home", action = "Index" }
);
routes.MapRoute(
name: "Generer",
url: "generer",
defaults: new { controller = "Home", action = "CreateDoc" }
);
routes.MapRoute(
name: "SendMail",
url: "mail",
defaults: new { controller = "Home", action = "SendMail" }
);
在通过 VS 进行调试时,它工作正常,但是当我在 IIS 中发布网站时,加载的第一页(基本上是一个表单)但是当我单击调用上面 js 函数的按钮时,我在浏览器控制台中出现错误:
POST http://localhost:88/generer 500 (Internal Server Error)
当我单击此链接时,我收到此错误:
由于以下错误,检索具有 CLSID {000209FF-0000-0000-C000-000000000046} 的组件的 COM 类工厂失败:80070005 访问被拒绝。(来自 HRESULT 的异常:0x80070005 (E_ACCESSDENIED))。说明:执行当前 Web 请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。
异常详细信息:System.UnauthorizedAccessException:检索具有 CLSID {000209FF-0000-0000-C000-000000000046} 的组件的 COM 类工厂失败,原因是以下错误:80070005 访问被拒绝。(来自 HRESULT 的异常:0x80070005 (E_ACCESSDENIED))。
ASP.NET 无权访问请求的资源。考虑向 ASP.NET 请求标识授予对资源的访问权限。ASP.NET 有一个基本进程标识(通常是 IIS 5 上的 {MACHINE}\ASPNET 或 IIS 6 和 IIS 7 上的网络服务,以及 IIS 7.5 上配置的应用程序池标识),如果应用程序不是模拟的,则使用该标识。如果应用程序通过 模拟,则身份将是匿名用户(通常是 IUSR_MACHINENAME)或经过身份验证的请求用户。
要授予 ASP.NET 对文件的访问权限,请在文件资源管理器中右键单击该文件,选择“属性”并选择“安全”选项卡。单击“添加”以添加相应的用户或组。突出显示 ASP.NET 帐户,然后选中所需访问权限的复选框。
我试图授予权限,但我真的不知道我必须向哪个用户授予权限。
我还注意到,当我发布这个项目时,并非所有文件和文件夹都复制到 wwwroot 中。与我的其他项目相反,所有文件和文件夹都被复制到 wwwroot。包括routeconfig控制器文件等...不适用于这个项目我不知道为什么
解决方案
推荐阅读
- c# - MUXC:Navigation 中是否不支持 WebView
- discord.js - discord bot 如何获取用户当前正在玩的游戏的缩略图?
- azure-web-app-service - 在已发布的 blazor wasm 应用程序中显示来自 aspnetusers 表的数据的问题
- google-cloud-platform - Terraform 三元运算
- python - 来自 sklearn 的支持向量回归给出了平面预测
- convolution - 如何构造卷积核来解决图像灰度平均问题?
- javascript - 使文本在导航栏后面/到达顶部时消失
- c++ - 如何使用 GTK 库 C++ 管理 Windows 导航
- c# - .NET Core 3.1 API 接受复杂的 XML 对象
- angular - Here Maps Parsing from Data Hub in angular