using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ChatRoomServer.Db { using System.Data.Entity; using ChatRoomServer.Db.Entities; public class ChatDb : DbContext { static ChatDb() { System.Data.Entity.Database.SetInitializer(null); } public ChatDb() : base(System.Configuration.ConfigurationManager.ConnectionStrings["12306.chat"].ConnectionString) { } /// /// This method is called when the model for a derived context has been initialized, but /// before the model has been locked down and used to initialize the context. The default /// implementation of this method does nothing, but it can be overridden in a derived class /// such that the model can be further configured before it is locked down. /// /// /// Typically, this method is called only once when the first instance of a derived context /// is created. The model for that context is then cached and is for all further instances of /// the context in the app domain. This caching can be disabled by setting the ModelCaching /// property on the given ModelBuidler, but note that this can seriously degrade performance. /// More control over caching is provided through use of the DbModelBuilder and DbContextFactory /// classes directly. /// /// The builder that defines the model for the context being created. protected override void OnModelCreating(DbModelBuilder modelBuilder) { base.OnModelCreating(modelBuilder); var cfg = modelBuilder.Configurations; cfg.AddFromAssembly(System.Reflection.Assembly.GetExecutingAssembly()); } public virtual DbSet Users { get; set; } public virtual DbSet Rooms { get; set; } public virtual DbSet ServerGroups { get; set; } public virtual DbSet MsgLogs { get; set; } public virtual DbSet Announcements { get; set; } public virtual DbSet OnlineHistories { get; set; } public virtual DbSet AbuseReports { get; set; } public virtual DbSet UserConnectLogs { get; set; } public virtual DbSet BlockUsers { get; set; } } }