Es muy parecido al que obtuve en un similar question. Pero en su caso, desea personalizar el modificador de acceso de las clases, en lugar de ObjectContext.
Adaptado después de la respuesta de HVD:
El diseñador tiene una opción "Añadir generación de código de artículo". Si usa esto, obtendrá varias opciones. Estoy usando "ADO.NET Self-Tracking Entity Generator", pero de la misma manera funciona para todos. Elegir esto agrega dos archivos de plantilla (Model.tt y Model.Context.tt) a su proyecto, que puede modificar como lo considere oportuno. Para la modificación que está pidiendo alrededor, encontrará una generación de código para sus clases de entidad en o cerca de la línea 37. Cambio
< # = Accessibility.ForType (entidad) #> # = < code.SpaceAfter (code.AbstractOption (entidad)) #> clase parcial ...
a
clase parcial ...
Para el tipo complejo hay una línea similar más abajo, también: borre la parte antes de "parcial".
Esto configurará los modificadores de acceso para todos los tipos a la vez, los futuros tipos incluidos. Para personalizar tipos individuales, es mejor utilizar el navegador modelo.
También tendrá que establecer la propiedad "Entity Container Access" del modelo en el interno, de lo contrario se generarán miembros con modificadores de acceso incompatibles.
Conozco la ventana Propiedades, pero no me permite seleccionar varias entidades y configurar su modificador de acceso al mismo tiempo. Tengo que hacerlo uno por uno. Creo que necesito ver las plantillas T4. –
Abra el archivo EDMX con el editor XML (es un archivo XML sin formato) y reemplace el lote por allí. Hecho en 20 segundos. –
Sí, estaba buscando una solución más permanente (donde los modificadores no serían reemplazados por la regeneración de código), pero eso está bien también. –