C# 使用此代码登录,但可以';I don’’我不试试,因为我找不到;不变量文化识别酶“;
我正在进行登录,并尝试使用C# 使用此代码登录,但可以';I don’’我不试试,因为我找不到;不变量文化识别酶“;,c#,xamarin,xamarin.forms,C#,Xamarin,Xamarin.forms,我正在进行登录,并尝试使用StringComparison.invariantCultureInoRecase进行登录,但在invariantCultureInoRecase上出现错误Xamarin似乎找不到它。我正在使用这个系统,所以这似乎不是问题所在 var userInfo = await parseAPI.loginUser (usernameEntry.Text, passwordEntry.Text); if (String.Equals (usernameEntry.Text,
StringComparison.invariantCultureInoRecase
进行登录,但在invariantCultureInoRecase
上出现错误Xamarin
似乎找不到它。我正在使用这个系统,所以这似乎不是问题所在
var userInfo = await parseAPI.loginUser (usernameEntry.Text, passwordEntry.Text);
if (String.Equals (usernameEntry.Text, yourEmail.Text, StringComparison.InvariantCultureIgnoreCase))
{
if (userInfo ["error"] == null)
{
Application.Current.Properties ["userId"] = userInfo ["objectId"].ToString ();
Application.Current.Properties ["sessionToken"] = userInfo ["sessionToken"].ToString ();
await Application.Current.SavePropertiesAsync ();
App.ourUsername = usernameEntry.Text;
System.Diagnostics.Debug.WriteLine (App.ourUsername);
Navigation.PopModalAsync ();
}
else
{
}
}
也许你最好使用
StringComparison.OrdinalIgnoreCase
?解析是区分大小写的-这意味着如果你想让你的登录不区分大小写,你的代码需要处理它,而不是解析。最简单的方法是始终执行一致的套管方案(下部或上部)
如果用户没有准确键入用户名,解析登录不会失败吗?如果发生这种情况,你所做的有什么意义?这就是我试图解决的问题。现在,如果你输入准确的东西,它就可以工作了。例如,如果你注册为“m”,登录为“m”,它就不会工作,但是如果你输入“m”,它就会工作。在调用解析登录函数之前,你需要修改用户名的大小写。嗯,好的。那么在这里,我在哪里注册?是的,它现在正在运行,但是代码似乎不起作用。你知道可能有什么问题吗?usernameentry是logininfo和youremail.text是RegisterInFo,你是舒尔App.ourUsername和youremail.text应该相等吗?尝试在控制台上获取这两个条目。youremail.text是从textbox获取的吗?这是代码:(String.Equals(usernameEntry.text,youremail.text,StringComparison.OrdinalIgnoreCase))好的,但是“username”如何找到我的两个不同条目?首先,我的registerentry(名为yourEmail.Text)和loginentry(名为usernameEntry.Text)UserRegControl和UserLoginControl-将它们替换为控件使用的任何名称。啊,好的。那么字符串可以命名为username和username1?因为他们不必是相同的,你可以给他们取任何你想要的名字。大概你会用不同的方法来使用它们,所以如果它们被命名为同一个东西,它们就不会冲突。非常感谢,杰森。
// Registration - force the user's input to lcase
string username = UserRegControl.Text.ToLower();
var userInfo = await parseAPI.signupUser (username, yourPassword.Text );
// Login - again, force user's input to lcase to match registration
string username = UserLoginControl.Text.ToLower();
var userInfo = await parseAPI.loginUser (username, passwordEntry.Text);