Как сказал Эвандро Паула, вы можете Install-Package Microsoft.Azure.WebJobs.Extensions.SendGrid -Version 3.0.0-beta5
сделать его совместимым со стандартом .net.
Тогда ваш сценарий представляет собой сочетание функций v1 и v2.Например, CreateResponse()
не принадлежит HttpRequest
, а класс Mail
не находится в сборке SendGrid
.
Вот очень упрощенный пример отправки почты с помощью функции HTTP:
public static IActionResult Run([HttpTrigger(AuthorizationLevel.Function, "get", "post", Route = null)]HttpRequest req, [SendGrid(ApiKey ="sendgridkey")] out SendGridMessage message, TraceWriter log)
{
log.Info("C# HTTP trigger function processed a request.");
message = new SendGridMessage();
message.AddTo("testto@gmail.com");
message.AddContent("text/html", "Test body");
message.SetFrom(new EmailAddress("testsend@gmail.com"));
message.SetSubject("Subject");
return new OkObjectResult("OK");
}
Установите sendgridkey в вашем файле local.setting.json
:
{
"IsEncrypted": false,
"Values": {
"AzureWebJobsStorage": "storageconnectionstring",
"AzureWebJobsDashboard": "UseDevelopmentStorage=true",
"sendgridkey": "yoursendgridkey"
}
}