如何解决在Blazor中处理报价
我的Blazor Web Assembly应用程序中有这样一行:
<Calendar User="@context.User.Claims.Where(user => user.Type == "sid")"></Calendar>
但是VS不喜欢“ sid”用引号引起的事实,因为它弄乱了User =“”属性。我该如何处理?
另外,还有一个疑问,这是在blazor网站集中获取用户ID的正确方法吗?这似乎是最简单的方法,但是我是身份验证的新手,所以我不知道自己是否违反了最佳做法。
谢谢!
解决方法
在@和C#代码之间使用括号:
<Calendar User="@(context.User.Claims.Where(user => user.Type == "sid"))"></Calendar>
关于第二个问题,假设您使用Asp.Net作为后端代码,则可以从用户请求服务器端的HttpContext.Current.User
获取User对象,您可以在此处阅读有关此内容的更多信息( https://docs.microsoft.com/en-us/dotnet/api/system.security.claims.claimsprincipal?view=netcore-3.1)
您可以使用括号@( )
使其成为代码块
<Calendar User="@(context.User.Claims.Where(user => user.Type == "sid"))" />
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。