Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/xamarin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用此代码登录,但可以';I don’’我不试试,因为我找不到;不变量文化识别酶“;_C#_Xamarin_Xamarin.forms - Fatal编程技术网

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);