Mam dużą bazę danych istniejącą bazę danych, z którą mogę się komunikować, i używam najpierw bazy danych EF 5.0, problem, który mam, polega na tym, że jeśli utworzę jakiekolwiek dekoracje danych, takie jak [stringlength(50)]
w klasie a następnie bazy danych są ładowane, kiedy "ładuję z bazy danych" wszystkie adnotacje danych zniknęły. Jak mogę je zachować?utrata danychAnotacja przy przesyłaniu modelu z bazy danych
Odpowiedz
To bardzo proste: Nie możesz! Ponieważ kody te są generowane automatycznie i zostaną nadpisane przy każdej aktualizacji lub zmianie każdego modelu.
Jednak możesz osiągnąć to, czego potrzebujesz, rozszerzając modele. Załóżmy, że EF generowane następujące klasy encji dla Ciebie:
namespace YourSolution
{
using System;
using System.Collections.Generic;
public partial class News
{
public int ID { get; set; }
public string Title { get; set; }
public string Description { get; set; }
public int UserID { get; set; }
public virtual UserProfile User{ get; set; }
}
}
i chcesz zrobić kilka arounds pracy, aby zachować cię adnotacji danych i atrybuty. Tak, wykonaj następujące kroki:
pierwsze, dodać dwie klasy gdzieś (tam, gdzie chcesz, ale lepiej być w Models
) jak następuje:
namespace YourSolution
{
[MetadataType(typeof(NewsAttribs))]
public partial class News
{
// leave it empty.
}
public class NewsAttribs
{
// Your attribs will come here.
}
}
następnie dodać jakie właściwości i atrybuty chcesz druga klasa - NewsAttribs
tutaj. :
public class NewsAttrib
{
[Display(Name = "News title")]
[Required(ErrorMessage = "Please enter the news title.")]
public string Title { get; set; }
// and other properties you want...
}
Uwagi:
1) nazw generowanego klasy encji i twoi klas musi być taka sama - tutaj YourSolution
.
2) Twoja pierwsza klasa musi być partial
a jego nazwa musi być taka sama jak EF generowanej klasy.
przejść przez to i wasze attribs nigdy nie zostało utracone ponownie ...
skończyło się robi somthing tak folowing samouczek http://msdn.microsoft. com/en-us/library/ee256141 (v = vs.100) .aspx – EricGS
wspaniały przykład - Mój kluczowy błąd polegał na tym, że przestrzeń nazw nie była taka sama. Chciałbym prędzej znaleźć ten przykład! Chciałbym, aby tytuł tego wątku był łatwiejszy do znalezienia. Rozszerzanie klas częściowych i dodawanie wartości DataValidation do MVC. Świetna odpowiedź. Dziękuję Ci. – BriOnH
- 1. Zachowaj zawartość bazy danych przy zmianie modelu
- 2. Ignoruj pola przy przesyłaniu formularza
- 3. Używanie CSVHelper przy przesyłaniu plików
- 4. Django modelu proxy do innej bazy danych
- 5. Data wybrana przy użyciu JQuery Datepicker nie odzwierciedla się w modelu MVC3 przy przesyłaniu
- 6. Zaktualizuj model z bazy danych (baza danych)
- 7. Synchronizacja modelu częściowej bazy danych z serwera na klienta
- 8. Refaktoryzacja z dala od modelu współdzielonej bazy danych
- 9. Dane POST znikają przy przesyłaniu dużego pliku
- 10. cakephp: chcę utworzyć kontroler bez modelu bazy danych
- 11. Podłączanie do kostki bazy danych, która korzysta z bazy danych MySQL z PHP (przy użyciu JDBC)
- 12. Gradle, wyklucz Artefakt przy przesyłaniu do Artifactory
- 13. Jak ukryć kolumnę bazy danych w modelu encji?
- 14. Zdarzenie kliknięcia przycisku jest wyzwalane przy przesyłaniu formularza z wpisem
- 15. Utrata przezroczystego tła przy pobieraniu zewnętrznego PNG
- 16. uzyskiwanie wartości bazy danych przy użyciu get_object_or_404
- 17. Korzystanie sails.js z bazy danych istniejące postgres
- 18. codeIgniter: utrata danych sesji po zalogowaniu
- 19. Utrata danych za pomocą funkcji unlist
- 20. Trwająca sesja Django, ale utrata danych
- 21. Utrata zakresu przy użyciu ng obejmują
- 22. Utrata rozmiaru tablicy Numpy przy maskowaniu
- 23. Pomocnik znacznika wprowadzania danych nie pokazuje daty z bazy danych
- 24. Zmień typ PK w klasie modelu bazy danych Oracle, wygenerowany przy użyciu hibernacji
- 25. Problemy z tworzeniem nowego modelu danych jednostki
- 26. tworzenie modelu django dla istniejącego widoku bazy danych/sql?
- 27. Jak ... Wyświetlanie danych z bazy
- 28. odzyskiwanie jednej wartości z bazy danych przy użyciu php
- 29. Generowanie Podmioty JPA2 z istniejącej bazy danych przy użyciu Maven
- 30. bazie Modelowanie NoSQL (przy konwersji z bazy danych SQL)
zaktualizowałem moją odpowiedź, aby pokazać, w jaki sposób ... – AminSaghi