2017-01-14 32 views
2

ASP.NET Core Webアプリケーションを作成するためにVS 2017を使用しています。 Sendgridパッケージをインストール中に、私は次のエラーが発生しています。ASP.NETコアアプリケーションにパッケージをインストール中にエラーが発生しました

パッケージSendgrid 8.0.5は、netcoreapp1.0(.NETCoreApp、Version = v1.0)と互換性がありません。パッケージSendgrid 8.0.5は以下をサポートします:net(.NETFramework、Version = v0.0) パッケージMicrosoft.AspNet.WebApi.Client 5.2.3は、netcoreapp1.0(.NETCoreApp、Version = v1.0)と互換性がありません。パッケージMicrosoft.AspNet.WebApi.Client 5.2.3は、 net45(.NETFramework、Version = v4.5) portable-net45 + netcore45 + wp8 + wp81 + wpa81(.NETPortable、Version = v0.0、Profile = wp8)をサポートします。 + netcore45 + net45 + wp81 + wpa81) パッケージSendGrid.CSharp.HTTP.Client 3.0.0は、netcoreapp1.0(.NETCoreApp、Version = v1.0)と互換性がありません。パッケージSendGrid.CSharp.HTTP.Client 3.0.0はサポートされています。ネット(.NETFramework、バージョン= v0.0) 1つ以上のパッケージが.NETCoreAppと互換性がありません、バージョン= v1.0.`

どれソリューションこのエラーのために?

+0

project.jsonファイルを投稿してください。 –

答えて

1

エラーがあなたにSendGrid 8.0.5とその依存関係のため、このサポートマトリックスを提供します。

       net  net45 portable-net45+netcore45+wp8+wp81+wpa81 
SendGrid       1 
Microsoft.AspNet.WebApi.Client   1    1 
SendGrid.CSharp.HTTP.Client  1 

あなたはそれらのどれもが、コアフレームワーク(netcoreapp)をサポートしていないし、代わりにフル・フレームワーク(net)を必要とすることを見ることができます。

アプリをCore Frameworkで実行する必要がある場合は、SendGrid 8.0.5を使用することはできません。あなたのオプションには、SendGrid.NetCoreを使用するか、MailKitを使用することができます(ただしこれに限定されません)。

アプリをCore Frameworkで実行する必要はなく、フルフレームワーク(net)のみをサポートしても問題ない場合は、SendGrid 8.0.5を使用できます。私たち自身のアプリケーションのために

、我々はSendGrid.NetCoreがあるよりも、より成熟しており、それがコアフレームワークをサポートしているため、MailKitバージョン1.10.0を使用することを選択しました。

project.json

"dependencies": {               
    "MailKit": "1.10.0"             
},                  
"frameworks": {               
    "netcoreapp1.1": {}             
} 

MailKitでSendGridを使用して電子メールを送信:次のように我々はそれを使用しています。

var mimeMessage = new MimeMessage(); 
mimeMessage.From.Add(new MailboxAddress("Admin", "[email protected]")); 
mimeMessage.To.Add(new MailboxAddress("Jon Doe", "[email protected]")); 
mimeMessage.Subject = "An Email for You!"; 
mimeMessage.Body = new TextPart("html") 
{ 
    Text = "This is the message."; 
}; 

using (var client = new SmtpClient()) 
{ 
    client.ServerCertificateValidationCallback = (s, c, h, e) => true; 
    client.Connect("smtp.sendgrid.net", 587); 
    await client.AuthenticateAsync("[email protected]", "ASD43234GDX");  
    await client.SendAsync(mimeMessage); 
    client.Disconnect(true); 
} 
関連する問題