Bu konuda hiç şansı olan var mı?ASP.NET MVC'de UpdateModel üzerinde çalışan IncludeProperties'i göremiyor gibi görünüyor
var myModel = getCurrentModelFromDb(id);
UpdateModel(myModel, "ModelName", new string { "Name", "Details" });
Should bu SADECE güncelleme: Ben gerçekleştirmek
public string Name { get; set; }
public string Details { get; set; }
public DateTime? Created { get; set; }
ve sonra:
beni ben basit bir model varsa ile diyelim ki, doğru anlamak eğer bildirin isim ve detay özellikleri? Çünkü db'den 'yaratılmış' bir tarih var diyelim, yukarıda yaptığım zaman, yarattığım tarih 01-01-0001 'e orijinalinden ayarlanmış gibi görünüyor. Sonra açık bir şekilde belirtilen bu alanı hariç çalıştığınızda
Üstelik:
UpdateModel(myModel, "ModelName",
new string { "Name", "Details" }, new string { "Created" });
Hala 01-01-0001 ayarlı ediliyor. Bu bir hata mı, yoksa yanlış yaptığım garip bir şey mi?
Etkin olarak yapmak istediğim, ilgili form alanları için olan ancak yalnızca geri kalanını db getirme işleminden ayarlanan ve bunları geçersiz veya varsayılan olmayan Şu anda yaptığı gibi görünüyor.
Yine de, yukarıdaki ile gerçek dünya senaryom arasındaki tek farkın bir listede updateModel kullanıyorum, bu yüzden listFromDb (parentId) öğesini etkin bir şekilde alıyorum ve sonra updateModel (myList, "ListPrefix") uygulayarak söylüyorum. her bir öğeyi [0], [1] vs ile alır. Tüm isimler güncellendiği için çalışır, ancak her şey işe yaramıyor.
Güncelleme: Muhtemelen fark ettim ki, 'includeProperties', bağlama nasıl çalıştığına benzer biçimde, formda içermek istediğiniz özellikleri tanımlamaktır. Bu durumda * ise, bunun yerine sadece modelinin model özelliklerini güncellemesini nasıl söyleyebilirim?
Yardımlarınız için teşekkürler womp. – GONeale
Merhaba, içeride neler olup bittiğini görmek için kaynak kodu takip edildikten sonra aşağıya inmiştim (dropdownlists'imle bazen çok fazla sorun yaşadığım için seçim listesi nereden geliyor?). Bunu Reflektör'de nasıl yaptınız? MVC çerçevesinde birkaç şey için çağrı yığını elde edebilmek için yararlı olacaktır. – Jason