SORU
25 ŞUBAT 2011, Cuma


Jilet dinamik Anonim tür RuntimeBinderException neden olur

Aşağıdaki hatayı alıyorum:

< . p ^'' için bir tanım içermiyor'' . RatingName nesne

Anonim dinamik türü baktığınızda, açıkça RatingName var.

Screenshot of Error

Bir Demet ile bunu yapabileceğimi biliyorum, ama hata iletisi oluşur neden anlamak istiyorum.

CEVAP
14 NİSAN 2011, PERŞEMBE


Anonim türleri iç özellikleri olan bir zavallı .NET çerçeve tasarım kararı, benim görüşüme göre.

Burada bir hızlıiyi eğlencelerbu sorun, yani anonim dönüştürerek düzeltmek için bir ExpandoObject hemen nesne.

public static ExpandoObject ToExpando(this object anonymousObject)
{
    IDictionary<string, object> anonymousDictionary =  new RouteValueDictionary(anonymousObject);
    IDictionary<string, object> expando = new ExpandoObject();
    foreach (var item in anonymousDictionary)
        expando.Add(item);
    return (ExpandoObject)expando;
}

Çokkolaykullanmak için:

return View("ViewName", someLinq.Select(new { x=1, y=2}.ToExpando());

Sizin bakış: elbette

@foreach (var item in Model) {
     <div>x = @item.x, y = @item.y</div>
}

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • DominicFear

    DominicFear

    30 Kasım 2006
  • hoorahjencar

    hoorahjencar

    6 HAZİRAN 2007
  • Matt Stokes

    Matt Stokes

    22 Ocak 2008