Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

128
Vistas
¿LINQ to SQL no es compatible con .net 5.0?

Mi proyecto usó .NetFramework 4.6.2 con la consulta "LINQ to SQL" de MSSQL. Una clase define todas las tablas que se necesitan consultar en la base de datos y la herencia a DataContext (System.Data.Linq).

Recientemente, voy a actualizar el programa a .net5.0. Sin embargo, descubrí que "LINQ to SQL" parece no ser compatible con .net5.0.

¿Alguien podría aconsejarme cómo escribir "LINQ to SQL" en .net5.0 o usar otras formas, por favor?

Gracias.

--

23 de abril PM6:38 Actualización: Acabo de encontrar SqlSugarCore en Nuget y probé que está bien usarlo. Pero aún me pregunto si hay alguna herramienta similar que pueda usar.

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

He intentado usar EFCore y funciona.

Simplemente instale Microsoft.EntityFrameworkCore y Microsoft.EntityFrameworkCore.SqlServer en NuGet.

Reemplace los errores mostrados de L2S a EFCore. Ejemplo: DataContext( L2S ) => DbContext( EFCOre ), public Table TableA;( L2S ) => public DbSet TableA { get; colocar; }( EFCore )... etc.

Tenga cuidado de que si su tabla tiene más de una clave principal, entonces debe escribir anular OnModelCreating como se muestra a continuación, TableAClass tiene tres claves y TableBClass tiene una clave.

。Configurar clave de por mesa

 protected override void OnModelCreating(ModelBuilder _modelBuilder) { _modelBuilder.Entity<TableAClass>().HasKey(_obj => new { _obj.Key1, _obj.Key2, _obj.Key3 }); _modelBuilder.Entity<TableBClass>().HasKey(_obj => new { _obj.Key1 }); }

Me quedé atascado unos días y no pude encontrar un ejemplo en Internet. Por lo tanto, decidí poner mi código aquí.

。Configurar clase de base de datos

 public class DBClassName : DbContext { public DbSet<TableAClass> TableAs { get; set; } public DbSet<TableBClass> TableBs { get; set; } protected override void OnModelCreating(ModelBuilder _modelBuilder) { _modelBuilder.Entity<TableAClass>().HasKey(_obj => new { _obj.Key1, _obj.Key2, _obj.Key3 }); _modelBuilder.Entity<TableBClass>().HasKey(_obj => new { _obj.Key1 }); } public DBClassName(string _connStr) : base(GetOptions(_connStr)) { } private static DbContextOptions GetOptions(string connectionString) { return SqlServerDbContextOptionsExtensions.UseSqlServer(new DbContextOptionsBuilder<DBClassName>(), connectionString).Options; } }

。Clase de tabla de configuración

 [Table("TableName")] public class TableClassName { public string ColumnA { get; set;} public string ColumnB { get; set;} }

Esta respuesta debería acreditar a todos los que me ayudaron en los comentarios.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda