Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/259.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# 获取会员资格用户电子邮件(如果不为空)_C#_Asp.net_Asp.net Membership - Fatal编程技术网

C# 获取会员资格用户电子邮件(如果不为空)

C# 获取会员资格用户电子邮件(如果不为空),c#,asp.net,asp.net-membership,C#,Asp.net,Asp.net Membership,在我的网站上,手机号码是userId,然后一些人有电子邮件,而另一些人没有,我如何检查一个用户是否有电子邮件 MembershipUser mu = Membership.GetUser(username); string userEmail = mu.Email.ToString(); if (!string.IsNullOrEmpty(userEmail)) { //do something } 在上面的代码中,我在第二行得到了错误,是否有帮助?如果您的电子邮件字符串为空,则抛出它将引

在我的网站上,手机号码是userId,然后一些人有电子邮件,而另一些人没有,我如何检查一个用户是否有电子邮件

MembershipUser mu = Membership.GetUser(username);
string userEmail = mu.Email.ToString();
if (!string.IsNullOrEmpty(userEmail))
{
  //do something
}

在上面的代码中,我在第二行得到了错误,是否有帮助?

如果您的电子邮件字符串为空,则抛出它将引发异常。您应该删除该方法调用。这可能是你的主要问题

错误是什么

尝试这样调试

    if (String.IsNullOrWhiteSpace(username))
            throw new ArgumentException("username is null or whitespace");

    MembershipUser mu = Membership.GetUser(username);
    if (mu == null)
        throw new ArgumentNullException("Couldn't get a membership user for that username");
    string userEmail = mu.Email; // email is already a string, do not invoke Tostring() on it

     if (!string.IsNullOrEmpty(userEmail))
     {
         //do something
     }

mu为空或mu。电子邮件为空。不要使用mu.Email.ToString,请使用string.IsNullOrEmpty(mu.Email)代替未设置为对象实例的对象引用。mu不为空,mu.email为空null@Thalmann在aspnet_会员资格中,用户有一个记录,在email列中为null。答案的主要部分可能只是删除了对mu.email的ToString()方法调用。