c# - Net Core IWebHostEnvironment 仅获得“c:\”
问题描述
我正在尝试将应用程序从 .net 移动到 net core 5,并且正在尝试获取内容根目录。
我看到的所有说明都显示在控制器中使用 IHostingEnvironment:
但是,使用它只会让我得到“c:”,我怀疑这是因为我试图使用它,而不是在控制器中,而是在 Identity RegisterModel : PageModel 中,以便获取一个 html 文件,该文件将成为确认电子邮件。
这可能是问题吗?
如果是这样,我将如何在不在控制器中的代码中获取文件的路径?
解决方案
IHostingEnvironment 像服务一样工作,需要注入到控制器的构造函数中。您可以在用户控制器中使用它。
如果没有要评估的代码,就不能做太多的考虑。
一个简单的方法是:在默认控制器的构造函数中,在静态类中设置一个为您保存路径的成员。一旦它是一个静态类,如果你将它设置为公共,你就可以从任何地方访问它。
推荐阅读
- swiftui - 致命错误:@SceneStorage 仅用于 SwiftUI 应用程序生命周期。:文件 SwiftUI,第 0 行
- ios - 离子应用程序在ios中仅显示白色空白屏幕
- javascript - 未捕获的 ReferenceError:Polymer 3.0 中未定义 require
- google-api - 谷歌课堂邀请接受方法返回一个 NOT-FOUND
- reactjs - ReactJs 中的 AND 运算符
- macos - 在 mac 上创建 tar 文件但排除隐藏文件
- javascript - 为什么应用在 Date 对象上的 toISOString() 会生成错误的时间段,将日期转换为字符串?
- ruby-on-rails - Linkedin Omniauth gem 'omniauth-linkedin-oauth2' 验证失败!invalid_credentials: OAuth2::Error
- java - 为什么 RestTemplate 会消耗过多的内存?
- spring - 是否可以生成请求范围?