2016-12-05 32 views
6

Artık Amazon, AWS Lambda işlevleri oluşturmak için C# desteklediğinden, bunu denemek istedim, ancak bir test yaparken takıldım.Montaj türünden yüklenemiyor (C# Amazon lambda işlevi)

Bu benim basit sınıftır:

using System; 
using System.IO; 
using System.Text; 

using Amazon.Lambda.Core; 
//using Amazon.Lambda.Serialization.Json; 

namespace MyTest 
{ 
    public static class LambdaFunction 
    { 
     public static string Handler(Stream stream) 
     { 
      return "Hello World"; 
     } 
    } 
} 

.NET Çekirdek çalışma zamanını kullanarak derlenmiş. Sonuç MyTest.dll dosyası ve bir MyTest.deps.json dosyası ile netstandard1.4 bir klasördür. .zip olarak sıkıştırılanlar AWS Lambda konsoluna yüklenir. Yapılandırma sekmesinde

Handler olarak tanımlanır:

MyTest::LambdaFunction::Handler 

Ama TEST düğmesine vurduğunda, bu döndürülen hata iletisi:

{ 
    "errorType": "LambdaException", 
    "errorMessage": "Unable to load type 'LambdaFunction' from assembly 'MyTest, Culture=neutral, PublicKeyToken=null'." 
} 

Not 1: i gerekli tanımadan önce Tam CLR yerine .Net Core kullanmak için, derleme yüklenemedi bir hata aldım, bu yüzden derlemenin derlenmiş olduğunu şimdi anladım.

Not2: İşleyici yönteminin yanı sıra statik/örnek sınıfı veya yöntemi veya herhangi bir birleşimi için çeşitli bağımsız değişken türlerini (özel seri hale getirici olmadan yalnızca desteklenenleri olan Aktar ve Dizeler) denedim .

Bu çalışma zaten çalışan ve bana birkaç işaretçi veren var mı?

cevap

11

Eh, sanırım o günlerden biri var ....

cevaptır i ad 8 eklemeyi unutursam |

olmalı:

MyTest::MyTest.LambdaFunction::Handler 
+0

Ben aynı sorun var ve ad ekleyerek kod göstermek, –

+0

Soru yayınlamak @RomanAsanov yardımcı olmuyor. Fark olmalı. – dd4711