.net core EF oracle db first
发布时间:2020-12-30 13:16:30 所属栏目:站长百科 来源:网络整理
导读:Nuget节制台: Install-Package log4netInstall-Package Newtonsoft.JsonInstall-Package AutofacInstall-Package Autofac.Extensions.DependencyInjectionInstall-Package AutoMapperInstall-Package DapperInstall-Package Microsoft.Extensions.OptionsIn
Nuget节制台: Install-Package log4net Install-Package Newtonsoft.Json Install-Package Autofac Install-Package Autofac.Extensions.DependencyInjection Install-Package AutoMapper Install-Package Dapper Install-Package Microsoft.Extensions.Options Install-Package Microsoft.Extensions.Caching.Abstractions Install-Package Microsoft.VisualStudio.Web.CodeGeneration.Design Install-Package Oracle.EntityFrameworkCore Install-Package Oracle.ManagedDataAccess.Core Install-Package Microsoft.EntityFrameworkCore Install-Package Microsoft.EntityFrameworkCore.Relational Install-Package Microsoft.EntityFrameworkCore.Design Install-Package Microsoft.EntityFrameworkCore.Tools Scaffold-DbContext -Force "Data Source=" Oracle.EntityFrameworkCore-OutputDir Models/DataModels -Context MyDbContext -Schemas aaa -Tables bbb
Scaffold呼吁名目:
Startup.cs public class Startup { //log4net日记 public static ILoggerRepository LogRepository { get; set; } public IConfiguration Configuration { get; } public Startup(IConfiguration configuration) { Configuration = configuration; Init(); } public void Init() { // 加载log4net日记设置文件 LogRepository = LogManager.CreateRepository("NETCoreRepository"); XmlConfigurator.Configure(LogRepository,new FileInfo("log4net.config")); LogHelper.RepositoryName = LogRepository.Name; // appSettings 设置类初始化 //ConfigHelper.Init(Configuration.GetSection("appSettings")); // 独一Id天生器 //SnowflakeInit.Init(Configuration); // 邮件初始化 //MailInit.Init(Configuration); // 体系启动日记 LogHelper.Write("TestApi Start()"); } /// <summary> /// 此要领由运行时挪用。行使此要领向容器添加处事。 /// This method gets called by the runtime. Use this method to add services to the container. /// </summary> public IServiceProvider ConfigureServices(IServiceCollection services) { //注册Cookie认证处事 //services.AddAuthentication(CookieAuthenticationDefaults.AuthenticationScheme).AddCookie(); // 添加MemoryCache services.AddMemoryCache(); // 支持HttpContext services.AddHttpContextAccessor(); services.AddSingleton<IHttpContextAccessor,HttpContextAccessor>(); // 实现小写的路由URL services.AddRouting(options => options.LowercaseUrls = true); // 添加自动映射 //services.AddAutoMapper(); // 对 JSON 数据行使殽杂巨细写。驼峰式,可是javascript 首字母小写情势. 默认值 // services.AddMvc().AddJsonOptions(options => { options.SerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver(); }); services.AddMvc().AddJsonOptions(options => { // 忽略轮回引用 options.SerializerSettings.ReferenceLoopHandling = Newtonsoft.Json.ReferenceLoopHandling.Ignore; // 对 JSON 数据行使殽杂巨细写。跟属性名同样的巨细.输出 options.SerializerSettings.ContractResolver = new Newtonsoft.Json.Serialization.DefaultContractResolver(); // 名目化json日期 options.SerializerSettings.Converters.Add(new Newtonsoft.Json.Converters.IsoDateTimeConverter { DateTimeFormat = "yyyy‘-‘MM‘-‘dd‘ ‘HH‘:‘mm‘:‘ss‘.‘fff" }); // long型转string options.SerializerSettings.Converters.Add(new Utils.LongToStringConverter()); }); //设置跨域处理赏罚,应承全部来历: services.AddCors(options => { options.AddPolicy("cors",set => { set.SetIsOriginAllowed(origin => true). //应承任何来历的主机遇见 AllowAnyHeader(). AllowAnyMethod(). AllowCredentials(); //指定处理赏罚cookie }); }); // 添加EF Oracle支持 services.AddDbContext<MyDbContext>(options => options.USEOracle(Configuration.GetConnectionString("OracleConnectionString"))); // 假如行使SQL Server 2008数据库,请添加UseRowNumberForPaging的选项 // 参考资料:https://github.com/aspnet/EntityFrameworkCore/issues/4616 // options.UseSqlServer(Configuration.GetConnectionString("MyDbContent"),b=>b.UseRowNumberForPaging()) // 添加Dapper //services.AddDapper("OracleConnection",options => //{ // options.ConnectionString = Configuration.GetConnectionString("OracleConnectionString"); // options.DbType = DbStoreType.Oracle; / |