言语有限,代码如下;
public IServiceProvider ConfigureServices(IServiceCollection services)
{
services
.AddCors()
.AddMvc();
JsonConvert.DefaultSettings = () => new JsonSerializerSettings
{
ContractResolver = new CamelCasePropertyNamesContractResolver()
};
//services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1);
services.AddSwaggerGen(option =>
{
option.SwaggerDoc("v1", new Info { Title = "My API", Version = "v1" });
var xmlFile = $"{Assembly.GetExecutingAssembly().GetName().Name}.xml";
var xmlPath = Path.Combine(AppContext.BaseDirectory, xmlFile);
option.IncludeXmlComments(xmlPath);
});
var builder = new ContainerBuilder();
//Register your own services within Autofac
var selfServices = Assembly.Load("WuMing.Service");
//Assembly.LoadFile(Path.Combine(HostingEnvironment.WebRootPath, "AUO.SmartCaring.Service.dll"));
builder.RegisterAssemblyTypes(selfServices).AsImplementedInterfaces();
var selfRepos_Repo = Assembly.Load("WuMing.Repository");
//Assembly.LoadFile(Path.Combine(HostingEnvironment.WebRootPath, "AUO.SmartCaring.Repository.dll"));
builder.RegisterAssemblyTypes(selfRepos_Repo).AsImplementedInterfaces();
var selfEntity_Repo = Assembly.Load("WuMing.Entity");
//Assembly.LoadFile(Path.Combine(HostingEnvironment.WebRootPath, "AUO.SmartCaring.Repository.dll"));
builder.RegisterAssemblyTypes(selfEntity_Repo).AsImplementedInterfaces();
var selfapi_Repo = Assembly.Load("WuMing.Interface");
//Assembly.LoadFile(Path.Combine(HostingEnvironment.WebRootPath, "AUO.SmartCaring.Repository.dll"));
builder.RegisterAssemblyTypes(selfapi_Repo).AsImplementedInterfaces();
// //Put the framework services into Autofac
builder.Populate(services);
//Build and return the Autofac collection
this.ApplicationContainer = builder.Build();
return new AutofacServiceProvider(this.ApplicationContainer);
}
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
app.UseErrorHandling();
app.UseSwagger();
// Enable middleware to serve swagger-ui (HTML, JS, CSS, etc.),
// specifying the Swagger JSON endpoint.
app.UseSwaggerUI(c =>
{
c.SwaggerEndpoint("/swagger/v1/swagger.json", "My API V1");
});
app.UseCors(builder =>
builder
.AllowAnyOrigin()
.AllowAnyHeader()
.AllowAnyMethod()
);
app.UseMvc();
}