ASP.NET标识中的UserId字符串比较



我在MVC 5中使用ASP.NET标识,想知道在查询表时执行字符串比较的最佳方法,在该表中,记录是以userId作为外键输入的。

通常我会选择==,但我不确定.NET标识中userId的字符串是如何创建的。我想这实际上是一个隐藏的GUID,所以我认为==会很好,但我想知道文化或案例是否会涉及其中。

有人知道这个字符串是否是==类型比较的唯一GUID吗?或者我应该使用string.Equals和一些StringComparison选项来说明区域性吗?

ASP.NET Identity可以使用GUID作为密钥。在这种情况下,GUID不应具有任何特定于区域性的字符。所以StringComparision. InvariantCultureIgnoreCase应该换成C#中的string.EqualsToLowerToUpper)可以用于SQL查询(LINQ)。

您可能希望在此处使用Ordinal/OrdinalIgnoreCase StringComparisons,因为它可以逐字符比较字符串,而不考虑语言约定。

点击此处阅读更多信息:https://msdn.microsoft.com/en-us/library/cc165449.aspx

这里:https://msdn.microsoft.com/en-us/library/system.stringcomparison(v=vs.110).aspx

代码示例:

string1.Equals(string2, StringComparison.Ordinal);
string1.Equals(string2, StringComparison.OrdinalIgnoreCase);

相关内容

  • 没有找到相关文章

最新更新