【发布时间】:2020-09-01 19:07:24
【问题描述】:
我正在将使用 Delphi + FireDac 制作的旧系统迁移到 C# + EF。由于它是一个遗留系统,因此已经有一个包含许多记录的数据库(许多记录没有编码信息)。
当我使用 C# + EF 获取包含特殊字符的记录时,字符显示不正确。
我该如何解决这个问题?
C#
德尔福
MainWindow.xaml.cs - ButtonClick
private void Button_Click(object sender, RoutedEventArgs e)
{
string appPath = AppContext.BaseDirectory;
string connectionString = $"database=localhost/3050:{appPath}\\database\\test.fdb;user=sysdba;password=masterkey";
using (AppDbContext con = new AppDbContext(connectionString))
{
Product p = con.Products.First();
lblText.Text = p.Name;
}
}
AppDbContext.cs
public class AppDbContext : DbContext
{
private readonly string _connectionString;
public DbSet<Product> Products { get; set; }
public AppDbContext(string connectionString)
{
_connectionString = connectionString;
}
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
base.OnConfiguring(optionsBuilder);
optionsBuilder.UseFirebird(_connectionString);
}
}
Product.cs
[Table("PRODUCTS")]
public class Product
{
[Column("ID")]
public int Id { get; set; }
[Column("NAME")]
public string Name { get; set; }
}
【问题讨论】:
标签: c# delphi .net-core entity-framework-core firebird