gpt4 book ai didi

c# - 无法添加对 System.Web.Hosting 的引用

转载 作者:可可西里 更新时间:2023-11-01 07:46:30 26 4
gpt4 key购买 nike

我正在将 Web 应用程序从 VB 迁移到 C#。我还升级到 VS2013 中的更新 3。 Hosting 类有变化吗?我在使用 Hosting.HostingEnvironment.MapPath 时遇到错误,我什至无法添加对 System.Web.Hosting 的引用,因为找不到它。当我尝试在添加引用时搜索程序集时,使用整个命名空间,即 System.Web.Hosting,它没有返回任何结果。

我在类中有 using 语句,它没有变灰,这意味着它正在用于某些事情,但代码不喜欢 Hosting.HostingEnvironment 中的 Hosting > 因为它是耀眼的红色。我什至没有在智能感知中获得 Hosting 类,该项目引用了 System.Web

最佳答案

没有Hosting 类。相反,您需要 HostingEnvironment 类:

HostingEnvironment.MapPath("~/Hello.txt");

HostingEnvironment 的完整类型是System.Web.Hosting.HostingEnvironment,所以你需要有一个using System.Web.Hosting; 文件中的子句,或使用全名。

但更重要的是,如果您正在制作 Web 应用程序,您很可能无论如何都不想使用 HostingEnvironment。你应该总是有一个实例HttpContextPage/Control,可让您访问 Server.MapPath,这应该是首选。

至于引用,System.Web.Hosting 命名空间位于 System.Web.dll 中,所以只要确保您有对它的引用就可以了很好。

由于您是从 VB 迁移它,我假设冲突是由 VB 对命名空间的不同处理引起的。在 C# 中,您不能只这样做:

using System.Web;

Hosting.HostingEnvironment.DoWhatever();

使用命名空间时,要么使用包括命名空间的完整类型名称,要么在确切的命名空间和类型上使用 using。将两者结合起来不太奏效。

关于c# - 无法添加对 System.Web.Hosting 的引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26236721/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com