2008-12-02 9 views
16

En Visual Studio 2008, cuando arrastro una tabla de base de datos en mi pantalla dbml, cualquier tabla que termine con la letra s automáticamente extrae la s del objeto dbml. ¿Hay alguna forma de desactivar esto?Linq to SQL: ¿Cómo impido que se cambie el nombre del objeto generado automáticamente?

Además, la colección de filas también se adjunta al nombre de la propiedad de la colección. ¿Hay alguna manera de cambiar eso también?

Gracias

+0

funcionó de maravilla, gracias de nuevo –

Respuesta

36

tiene que desactivar los nombres de tabla pluralizar para el diseñador de LINQ to SQL.

Para hacer esto vaya a Herramientas -> Opciones -> Herramientas de base de datos -> diseñador O/R y cambiar el pluralización de los nombres a falsa.

A continuación, tendrá que volver a compilar el proyecto y se debe abordar el nombramiento de

+5

¿Es posible deshabilitarlo solo para una sola entidad? – awaisj

+0

Me encanta esta respuesta. –

+0

awaisj, mira mi respuesta. –

0

En un primer escenario código, puede manejar algunos problemas que surgen como este en un nivel más granular, simplemente especificando el nombre de la tabla de la entidad con el atributo de la tabla:

[Table("QTPhotos")] 
    public class QTPhoto 

lo que encontré fue, originalmente, tuvimos un simple nombre de la entidad "Foto", pero esto entraba en conflicto con algunas cosas (con un número de nuestros nombres de entidad), así que comenzamos a calificarlos ("QT" como un antecedente de muestra), y de repente surgió este problema. Así que apuesto a que esto es porque "Foto" es una palabra reconocida que termina en "o" que no se pliega a "..oes" (como en Potat oes), pero "QTPhoto" no, lo que significa que estaba tratando de encontrar una tabla llamada "QTPhotoes".

Simplemente estableciendo el nombre de la tabla corrige esto.