こんにちは私は基本的に特定の日に存在するx個の電子メールを返すクエリを実行していますが、sendgridのapiを使用してこれらの電子メールすべてに電子メールを送信したいのですが、以下に列挙されたエラーの多くは、誰かが光を放つことができるだろうか?Azure関数SendGrid
[コード]
**#r "System.Data"
#r "SendGrid"
using System;
using System.Data;
using SendGrid.Helpers.Mail;
using System.Data.SqlClient;
using System.Text.RegularExpressions;
using Microsoft.SqlServer.Server;
using SendGrid;
private SqlConnection conn = null;
private SqlDataAdapter da = null;
private SqlCommandBuilder cb = null;
private DataSet ds = null;
private String location = null;
public void Run(TimerInfo myTimer, TraceWriter log)
{
log.Info($"C# Timer trigger function executed at: {DateTime.Now}");
string connStr = "Data Source=sdc-hwsb.database.windows.net;Initial Catalog=SDC-HotelWSBooking;Integrated Security=False;User ID=sdchwsb;Password=Trivago17!;Connect Timeout=15;Encrypt=False;TrustServerCertificate=True;ApplicationIntent=ReadWrite;MultiSubnetFailover=False";
SqlConnection conn = new SqlConnection(connStr);
conn.Open();
string query = "SELECT email FROM dbo.test_bookings2 WHERE startDate = @startDate";
SqlCommand cmd = new SqlCommand(query, conn);
cmd.Parameters.AddWithValue("@startDate", DateTime.Today.ToShortDateString());
int k = 0;
int f = Convert.ToInt32(cmd.ExecuteNonQuery());
while (f > 0 & k < f)
{
conn = new SqlConnection(connStr);
da = new SqlDataAdapter(query, conn);
cb = new SqlCommandBuilder(da);
ds = new DataSet();
da.Fill(ds);
String Email = Convert.ToString(ds.Tables[0].Rows[k]);
Run1(Email,message);
k++;
}
}
public static void Run1(string email, out Mail message)
{
message = new Mail
{
Subject = "Azure news"
};
var personalization = new Personalization();
// change to email of recipient
personalization.AddTo(new Email(email));
Content content = new Content
{
Type = "text/plain",
Value = "DD"
};
message.AddContent(content);
message.AddPersonalization(personalization);
}
**
Iがメッセージオブジェクトsendgridにrefferingエラーのような使用されて取得しています:
2017-09-25T18:50:37.754 Function started (Id=067b32b9-7bc3-47ca-9f32-b8b92c3b57e9)
2017-09-25T18:50:37.770 Function compilation error
2017-09-25T18:50:37.770 run.csx(38,28): error CS0103: The name 'message' does not exist in the current context
2017-09-25T18:50:37.807 Exception while executing function: Functions.TimerTriggerCSharp1. Microsoft.Azure.WebJobs.Script: Script compilation failed.
2017-09-25T18:50:37.948 Function completed (Failure, Id=067b32b9-7bc3-47ca-9f32-b8b92c3b57e9, Duration=196ms)
私はそれらを修正しました../ @MikeS – rahulchawla
それらのすべてではありません:)あなたのコードのC#コンパイルエラーについてはまだ教えています。 38行目の 'message'の使用は不正です。 –
これはsendgridオブジェクトです。これは私がバインドするために使用しているドキュメントですhttps://docs.microsoft.com/en-us/azure/azure-functions/functions-bindings-sendgrid – rahulchawla