C# 邮件正文中的锚链

C# 邮件正文中的锚链,c#,html,vb.net,outlook,C#,Html,Vb.net,Outlook,步骤1:我有一个要求,比如在我的应用程序中点击一个按钮,邮件应该被触发到列表中相应的人 第2步:邮件项目应该包含一个链接,如“单击此处批准” 步骤3:单击该链接后,另一个邮件项目应打开至:xxx@xxx.com,抄送:yyy@yyy.com,主题等 我使用了下面的代码 protected void Page_Load(object sender, EventArgs e) { string sMsg = ""; string cc = "abc@abc.com"; str

步骤1:我有一个要求,比如在我的应用程序中点击一个按钮,邮件应该被触发到列表中相应的人

第2步:邮件项目应该包含一个链接,如“单击此处批准”

步骤3:单击该链接后,另一个邮件项目应打开至:xxx@xxx.com,抄送:yyy@yyy.com,主题等

我使用了下面的代码

protected void Page_Load(object sender, EventArgs e)
{
    string sMsg = "";
    string cc = "abc@abc.com";
    string Subject = "Test";
    string Body = "<a href=\"mailto: xxx.xxx@ge.com?Subject=subject\">Click here to send mail</a>";
    sMsg = Redirct("mailto:" + cc + "?Subject=" + Subject + "&body=" + Body);
    ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "showalert", sMsg,true);
}

    public string Redirct(string pagename)
    {
    StringBuilder sb = new StringBuilder();
    sb.Append("window.location.href='" + pagename + "'; ");
    return sb.ToString();
    }
受保护的无效页面加载(对象发送方,事件参数e)
{
字符串sMsg=“”;
字符串cc=”abc@abc.com";
字符串Subject=“Test”;
字符串体=”;
sMsg=Redirct(“mailto:“+cc+”?Subject=“+Subject+””和body=“+body”);
ScriptManager.RegisterStartupScript(this.Page,this.GetType(),“showalert”,sMsg,true);
}
公共字符串重读(字符串pagename)
{
StringBuilder sb=新的StringBuilder();
sb.Append(“window.location.href=”+pagename+“;”);
使某人返回字符串();
}
上面的代码抛出错误,如“命令行参数无效。请验证您使用的开关”
有什么问题吗?

我想发表评论,但不能,因为我没有足够的代表。但我注意到你正在避开href中的“”,为什么不使用“”?不确定这是否是问题所在,但在这里转义字符对我来说似乎没什么用。

这里有什么不值得添加的内容?您是否建议这样做,就像删除转义字符串Body=“”;?诺诺诺。像这样:“然而,您在sb.Append(“window.location.href=”“+pagename+”;”)中确实这样做了;我真的很好奇为什么你在“弦体”中逃过了它不,它不起作用。没有打开outlook邮件。这可能是因为outlook不接受html代码,因为它可能被错误地使用。还有其他方法吗?