Şirketim boyunca yeniden kullanabileceğim bir genel (birçok yerde yararlı) denetimi yazmaya çalışıyorum.Asp.Net MVC Razor'da 'genel' kontrol nasıl oluşturabilirim?
Görünüm ve viewmodelimde gerçek C# jeneriklerle ilgili sorunlar yaşıyorum. İşte
ben yapmaya çalışıyorum şeyin bir örnektir:Jenerik kısmi görünümü: (_Control.cshtml
)
@model SimpleExample<dynamic>
@Model.HtmlTemplate(Model.Data)
ViewData: (SimpleExample.cs
)
public class SimpleExample<T>
{
public T Data;
public Func<T, System.Web.WebPages.HelperResult> HtmlTemplate;
}
Örnek kullanım: (FullView.cshtml
)
@model Foo.MyViewData
@Html.Partial("_Control", new SimpleExample<MyViewData>
{
Data = Model,
HtmlTemplate = @<div>@item.SomeProperty</div>
})
Aradığım işlevin önemli bir kısmı, kullanıcıların Html satır içi yazımlarını yazarken Intellisense'i (FullView.cshtml
'da olduğu gibi) yazmaları için yazılan bir nesne almalarıdır.
Her şey iyi derler ve intellisense çalışıyor ama hatasına çalışma zamanını alıyorum:
The model item passed into the dictionary is of type
'AnytimeHealth.Web.ViewData.SimpleExample`1[Foo.MyViewData]',
but this dictionary requires a model item of type
'AnytimeHealth.Web.ViewData.SimpleExample`1[System.Object]'.
Ben bu almak için benim jenerik türüne kullanım eğilimlerini kullanmak mümkün olabilir okudum Çalış, ama bunu nasıl yapacağımı bilmiyorum.
Bu işe nasıl başlayabileceğimi öğretir misiniz? _Control.cshtml
tanımladığınız
Bu benim için çalışıyor, zira _Control 'de intellisense kaybettim: (' – jjnguy