LINQ to SQL strings to enums

LINQ to SQL permet aux mappages de table de se convertir automatiquement dans les deux sens en Enums en spécifiant le type de la colonne - cela fonctionne pour les chaînes ou les entiers.

Existe-t-il un moyen de rendre la conversion insensible à la casse ou d'ajouter une classe de mappage personnalisée ou une méthode d'extension dans le mélange afin que je puisse spécifier à quoi la chaîne doit ressembler plus en détail.

Les raisons de le faire pourraient être afin de fournir une convention de nommage plus agréable à l'intérieur d'un nouveau C funky

请先 登录 后评论

1 réponses

Yaakov Ellis

Vous pouvez toujours ajouter une classe partielle portant le même nom que votre classe LinqToSql, puis définir vos propres paramètres et fonctions. Celles-ci seront alors accessibles en tant que paramètres d'objet et méthodes pour cet objet, de la même manière que les méthodes LinqToSql générées automatiquement sont accessibles.

Exemple : Vous avez une classe LinqToSql nommée Car qui correspond à la table Car dans la base de données. Vous pouvez ensuite ajouter un fichier à App_Code avec le code suivant :

public partial class Car {
  // Add properties and methods to extend the functionality of Car
}

Je ne sais pas si cela répond totalement à votre exigence de changer la façon dont les énumérations sont mappées dans une colonne. Cependant, vous pouvez ajouter un paramètre où les propriétés get/set fonctionneront pour mapper les énumérations dont vous avez besoin tout en gardant les choses insensibles à la casse.

请先 登录 后评论