我们正在使用azure发布我们的应用程序,我们为开发,舞台和产品提供了三种不同的网络应用程序。
参考以下链接
https://azure.microsoft.com/en-us/documentation/articles/sendgrid-dotnet-how-to-send-email/
我们在azure中配置了sendgrid帐户,我们可以在所有三个环境dev,stag和prod中发送没有任何问题的电子邮件。
注意:我们对dev,stage和prod使用相同的sendgrid帐户。
问题:
现在,为了跟踪和计费目的,我们决定为dev,stag和prod使用不同的sendgrid帐户。即,
Azure SendGrid帐户1 - dev
Azure SendGrid帐户2 - stag
Azure SendGrid帐户3 - prod
但我们不知道如何通过azure portal完成,当我们尝试它时不允许。
请建议一些步骤或链接来完成此操作,以便我们可以计划发布。提前致谢
答案 0 :(得分:1)
SendGrid支持子用户,因此您可以拥有父帐户和两个或三个子用户,具体取决于您是否也想通过父帐户发送。您可以在SendGrid文档上read about subusers。如果您有任何问题,请告诉我。
答案 1 :(得分:1)
在文章的大约一半时间内,您提供了一个链接供您查看:
和
您可以添加更多应用设置,例如:
SENDGRID_DEV_APIKEY,SENDGRID_STAGE_APIKEY,SENDGRID_PROD_APIKEY
然后在您的代码中检查代码运行的环境并使用相应的应用程序设置/ api密钥。
var apiKey = "";
//GetCurrentEnvironment() is a method you would write that contains logic to determine what "environment" is being used.
if (GetCurrentEnvironment() == "dev") {
apiKey = System.Environment.GetEnvironmentVariable("SENDGRID_DEV_APIKEY");
} else if (GetCurrentEnvironment() == "stage") {
apiKey = System.Environment.GetEnvironmentVariable("SENDGRID_STAGE_APIKEY");
} else if (GetCurrentEnvironment() == "prod") {
apiKey = System.Environment.GetEnvironmentVariable("SENDGRID_PROD_APIKEY");
}
var transportWeb = new Web(apiKey);