C# 创建一个新的邮件地址会产生;指定的字符串不是电子邮件地址所需的格式";,虽然格式正确

C# 创建一个新的邮件地址会产生;指定的字符串不是电子邮件地址所需的格式";,虽然格式正确,c#,.net,asp.net,vb.net,C#,.net,Asp.net,Vb.net,我正在尝试创建一个新的邮件地址,电子邮件来自请求参数,即:Request.Params(“fromEmail”)。它实际上是通过http请求从android设备发送的。 当我尝试从此电子邮件创建新的邮件地址时,我收到错误“指定的字符串不是电子邮件地址所需的格式”。当试图直接创建它时,它ma=新邮件地址(“a@b.com“”使用相同的后续字符串,它可以工作,但是使用ma=newmaildaddress(Convert.ToString(Request.Params(“fromEmail”)创建它)

我正在尝试创建一个新的邮件地址,电子邮件来自请求参数,即:
Request.Params(“fromEmail”)
。它实际上是通过http请求从android设备发送的。 当我尝试从此电子邮件创建新的邮件地址时,我收到错误“指定的字符串不是电子邮件地址所需的格式”。当试图直接创建它时,它
ma=新邮件地址(“a@b.com“”
使用相同的后续字符串,它可以工作,但是使用
ma=newmaildaddress(Convert.ToString(Request.Params(“fromEmail”)创建它)
产生错误。我怀疑有一些特殊字符被发送,使电子邮件格式无法识别,如何修复


谢谢

您可能有编码问题,或者参数中有非打印字符。

您可能有编码问题,或者参数中有非打印字符。

只需检查
Convert.ToString(Request.Params(“fromEmail”)
的输出。您将看到,它不是”a@b.com".实际上,我使用的是Convert.ToString(Request.Params(“fromEmail”)的输出(从QuickWatch窗口),它工作得很好!就在我使用Convert.ToString(Request.Params(“fromEmail”)时,出现了问题,最让我吃惊的是输出是“a@b.com,请尝试以下操作:
var param=Convert.ToString(Request.Params(“fromEmail”);如果(param!=”a@b.com)抛出新的InvalidOperationException();else ma=new MailAddress(param);
-它是否抛出异常?只需检查
Convert.ToString(Request.Params(“fromEmail”)的输出即可。
。您将看到,它不是”a@b.com“。实际上它是Convert.ToString(Request.Params)的输出(“fromEmail”)我正在使用(从QuickWatch窗口),它工作正常!就在我使用Convert.ToString(Request.Params(“fromEmail”)时出现了问题,最让我吃惊的是a@b.com,请尝试以下操作:
var param=Convert.ToString(Request.Params(“fromEmail”);if(param!=)a@b.com")throw new InvalidOperationException();else ma=new MailAddress(param);
-是否引发异常?是的问题实际上是从Android设备发送了一个“\n”字符,而“\n”未能出现在快速观察窗口中是的问题实际上是从Android设备发送了一个“\n”字符,即\“n”未能出现在快速观察窗口中