Je regarde une vidéo à propos de [LINQ] [1] et j'ai rencontré un problème. Dans cette vidéo, Mike utilise des attributs personnalisés pour le nom de la base de données et cela ne fonctionne pas pour moi.Utilisation des attributs personnalisés
Mon code (qui fonctionne très bien):
class MyContext : DataContext
{
public MyContext(string conStr) : base(conStr)
{
}
}
class Program
{
static void Main(string[] args)
{
MyContext ctx = new MyContext("server=.;database=AdventureWorks;Integrated Security=SSPI");
Console.WriteLine(ctx.Connection.ConnectionString);
ctx.ExecuteCommand("insert into _table (a, b) select {0}, {1}", "5", "B");
Console.WriteLine("That's it!");
Console.ReadLine();
}
}
Comment je voudrais que ce soit (notez le paramètre de base de données manquantes dans la création du CTX d'objet et attribut personnalisé supplémentaire pour le nom de la base de données avant la MyContext de classe):
[Database(Name="AdventureWorks")]
class MyContext : DataContext
{
public MyContext(string conStr) : base(conStr)
{
}
}
class Program
{
static void Main(string[] args)
{
MyContext ctx = new MyContext("server=.;Integrated Security=SSPI");
Console.WriteLine(ctx.Connection.ConnectionString);
ctx.ExecuteCommand("insert into _table (a, b) select {0}, {1}", "5", "B");
Console.WriteLine("That's it!");
Console.ReadLine();
}
}
Cette exception lance « invalide nom de l'objet _table », tout comme je ne définirais pas un nom de base de données. Est-ce que je manque quelque chose? C'est la première fois que j'utilise des attributs personnalisés, ...