C# 邮箱地址
Im使用asp mvc核心中的mailKit从IMAP邮箱收集电子邮件 我使用命令返回消息C# 邮箱地址,c#,asp.net-mvc,mailkit,C#,Asp.net Mvc,Mailkit,Im使用asp mvc核心中的mailKit从IMAP邮箱收集电子邮件 我使用命令返回消息 var message = inbox.GetMessage(uid) 这将返回消息的所有结果。我想从这里访问发件人的电子邮件地址(不包括姓名)。在上面的一行中断之后,我可以看到变量消息具有以下属性 message -From --From(Array) ---From(item) ----Name (name of the sender) ----Address(email of the sende
var message = inbox.GetMessage(uid)
这将返回消息的所有结果。我想从这里访问发件人的电子邮件地址(不包括姓名)。在上面的一行中断之后,我可以看到变量消息具有以下属性
message
-From
--From(Array)
---From(item)
----Name (name of the sender)
----Address(email of the sender)
当使用信息引用上述内容时,我能够收到姓名,但地址未列出(在intelisence中,也不会生成)
有人知道为什么它可以作为变量的属性显示,但不能通过代码访问吗
我只是想
var name = message.From[0].Name.ToString()
MimeMessage.From
属性是一个InternetAddressList
(或多或少List
)
InternetAddress
是MailboxAddress
和GroupAddress
的抽象基类,它只包含您发现的Name
属性
要获取地址
,首先需要将其转换为邮箱地址
。。。但前提是它实际上是一个邮箱地址
,否则您将得到强制转换异常
InternetAddressList
有一个名为Mailboxes
的便利属性,可用于迭代包含在中的MailboxAddress
的扁平列表。您可以使用此代码块
message.From.OfType().Single()地址
是否GetMessage
返回动态对象?您在尝试此代码时是否出现错误?属性Name
的类型是string
?没有错误,只是在visual studio中键入时不可用。但显示ehn i断点并检查消息变量var EmailAddress=message.From.mailboxs.FirstOrDefault().Address;
var name = message.From[0].Name.ToString()