Ben*_*ort 7 asp.net-mvc openid-connect .net-core
我在Visual Studio 2017中创建了一个新的.NET Core MVC应用程序并启用了多租户身份验证.
我已经完成了配置(ClientId,Authority等),但是当我调试应用程序时,Startup.cs中有一个异常,特别是app.useOpenIdConnectAuthentication方法.
给出的例外是
System.ArgumentException:'value'中的路径必须以'/'开头.
对于C#和.NET Core,我有点新手,所以我不确定我是否遗漏了一些明显的东西.主要的关键点是调试器使用参数'value'引用的内容,因为我在代码中看不到它的任何提及.除了将配置项添加到appsettings.json之外,Visual Studio生成的默认模板之外没有任何更改.
由于问题中没有代码,所以我会尽量做一个笼统的回答。
当您使用此重载PathString.FromUriComponent(string)并且字符串不以/字符开头时会出现此异常
因此,例如,以下代码将引发异常:
PathString.FromUriComponent("controllerName/actionName"); // throw exception
Run Code Online (Sandbox Code Playgroud)
并修复以前的异常,你可以这样写
PathString.FromUriComponent("/controllerName/actionName"); // working, but as relative path
Run Code Online (Sandbox Code Playgroud)
当然,这将是一个相对路径。
如果您想使用绝对路径(而不是以 开始您的字符串/),那么您必须使用此方法的另一个重载,它将Uri对象作为参数而不是string
这是一个例子
// use an absolute path
PathString.FromUriComponent(new Uri("https://localhost:8000/controller/action/"))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6174 次 |
| 最近记录: |