私はBigDataOverviewと呼ばれるデータベーススキーマを持っています。私のアプリケーションのほとんどは既にAdminDbという別のスキーマに接続されています。.Net CoreでDevOpsのコントローラを作成する
また、私のAdminDbスキーマによく統合された.Netコアアプリケーションがあります。
私のセカンダリスキーマには、名前が「SimpleDataOverview」という名前の1つのテーブルと名前の付いた13の異なるテーブルがあります。
私のアプリケーションにこの二次スキーマを追加して、アプリケーションに表示するデータを{ get; }
にすることができます。
私は私のappsettings.jsonで私のConnectionStringを設定している:
"ConnectionStrings": {
"DefaultConnection":"server=<placeholder>;database=AdminDB;sslmode=none;",
"OverviewDataConnection": "server=<placeholder>;database=BigDataOverview;sslmode=none;"
}
名はフィールド(列)の面で互いに同一であるとして数字を持っている13個のテーブルのすべて。したがって、私はそれらのすべてに一致するモデルを作成しました:NumberTableModel.cs
public class NumberTableModel
{
[Key]
public int RowID { get; }
public int SensorID { get; }
public DateTime ReadingDate { get; }
public int ReadingCount { get; }
public float ApproxDataSize { get; }
public Time ReadingTime { get; }
public string JsonData { get; }
public long LastUpdate { get; }
public string Source { get; }
}
私はDbContextをも作成しました:DevOpsDbContext
にpublic class DevOpsDbContext : DbContext
{
public DevOpsDbContext(DbContextOptions<DevOpsDbContext> options) : base(options)
{
}
public DbSet<NumberTableModel> _353224061929963 { get; set; }
public DbSet<NumberTableModel> _353224061929964 { get; set; }
public DbSet<NumberTableModel> _353224061929965 { get; set; }
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<NumberTableModel>().ToTable("353224061929963");
modelBuilder.Entity<NumberTableModel>().ToTable("353224061929964");
modelBuilder.Entity<NumberTableModel>().ToTable("353224061929965");
}
}
をそして、私は私の中でそれを設定していますStartup.cs:
services.AddDbContext<DevOpsDbContext>(options =>
options.UseMySql(Configuration.GetConnectionString("OverviewDataConnection")));
私は、Entity Frameworkのを使用して、ビューのController
を作成しようとすると、
ただし、Visual Studioは、次のエラーメッセージが表示されて文句を言うだろう:
そして私は私が信じている....私は」どんな援助にも非常に感謝しています。
。ありがとう!それが問題を解決するかどうかを知らせます。 – Zeliax