To bardzo przypomina anwer, który mam na similar question. Ale w twoim przypadku chcesz dostosować modyfikator dostępu do klas, a nie ObjectContext.
adaptowany po odebraniu HVD za:
Projektant ma opcję "Add Item Code Generation". Jeśli skorzystasz z tego, otrzymasz kilka opcji. Używam "Self-Tracking Entity Generator" ADO.NET, ale w ten sam sposób działa dla nich wszystkich. Wybranie tej opcji dodaje do projektu dwa pliki szablonów (Model.tt i Model.Context.tt), które można dowolnie modyfikować według własnego uznania. Dla modyfikacji jesteś pytając o, znajdziesz generowanie kodu dla swoich klas jednostki na lub w pobliżu linii 37. Zmian
< # = Accessibility.ForType (podmiot) #> < # = code.SpaceAfter (code.AbstractOption (podmiot)) #> partial class ...
do
częściowe klasa ...
Dla typu złożonego istnieje podobna linia poniżej: również wymaż część przed "częściową".
Spowoduje to ustawienie modyfikatorów dostępu dla wszystkich typów jednocześnie, włącznie z przyszłymi typami. W celu dostosowania poszczególnych typów lepiej korzystaj z przeglądarki modelu.
Będziesz musiał ustawić właściwość "Entity Container Access" samego modelu na wewnętrzną, w przeciwnym razie zostaną wygenerowane członkowie z niezgodnymi modyfikatorami dostępu.
Zdaję sobie sprawę z okna Właściwości, ale nie pozwala mi to na wybór wielu jednostek i jednoczesne ustawienie ich modyfikatora dostępu. Muszę to zrobić jeden po drugim. Chyba muszę spojrzeć na szablony T4. –
Otwórz plik EDMX za pomocą edytora XML (jest to zwykły plik XML) i dokonaj wymiany wsadu tam. Zrobione w 20 sekund. –
Tak, wybierałem bardziej trwałe rozwiązanie (gdzie modyfikatory nie zostałyby zastąpione przez regenerację kodu), ale to też jest w porządku. –