Bir denetleyici bir modele dayalı bir görünüm oluşturduğunda, indeksleyiciyi kullanarak ViewData koleksiyonundan özellikleri edinebilirsiniz (örn. ViewData ["Özellik"]). ,Asp.net MVC Kullanıcı Denetimi ViewData
<%= ViewData["DisplayMessage"] %>
Bu doğru DisplayMessage hale düşünürdüm:
return View("Message", new { DisplayMessage = "This is a test" });
ve benim İleti kumanda üzerindeki bu vardı: Ancak, aşağıdaki kullanarak aramaya çalıştım paylaşılan kullanıcı kontrolü var ancak, boş döndürülüyor. etrafında müdahalesi ağır bir doz sonra nihayet kuvvetle benim kullanıcı kontrolü yazabilmek için bir "MessageData" sınıfı oluşturuldu:
public class MessageControl : ViewUserControl<MessageData>
ve şimdi bu çağrı çalışır:
return View("Message", new MessageData() { DisplayMessage = "This is a test" });
ve benzeri gösterilebilir Bu: DisplayMessage özellik kullanıcı kontrolü güçlü yazmadan ViewData (. yani ViewData [ "DisplayMessage"]) toplama eklenecektir olmaz Neden
<%= ViewData.Model.DisplayMessage %>
? Bu tasarımla mı? ViewData'nın "DisplayMessage" için bir anahtar içermesi mantıklı olmaz mıydı? Tabii