2018年6月18日月曜日

appsettings.jsonを取得

appsettings.json
{
  "Setting": {
    "Name" : "FooBar",
    "Age"  : 20
  }
}

Startup.cs
public void ConfigureServices(IServiceCollection services)
{
    services.Configure(Configuration.GetSection("Hogehoge"));
}

Models/Hogehoge.cs
public class Hogehoge
{
  public string Name { get; set; }
  public int Age { get; set; }
}

Controllers/HomeController.cs
public HomeController(IOptions option){
    //option.Value.Name
    //option.Value.Age
}

2018年5月15日火曜日

ルーティング

■.NetFramework
App_Start\RouteConfig.cs
routes.MapRoute(
    name: "Default",
    url: "{controller}/{action}/{id}",
    defaults: new
    {
        controller = "Home",
        action = "Index",
        id = UrlParameter.Optional
    }
);


■.Net Core
Startup.cs
app.UseMvc(routes =>
{
    routes.MapRoute(
        name: "default",
        template: "{controller=Home}/{action=Index}/{id?}");
});

2018年5月14日月曜日

認証の設定

■.Net Framework

App_Start\IdentityConfig.cs
manager.PasswordValidator = new PasswordValidator
{
    RequiredLength = 6,
    RequireNonLetterOrDigit = false,
    RequireDigit = true,
    RequireLowercase = true,
    RequireUppercase = true,
};

すでにある設定を変更する

■.Net Core
Startup.cs
services.Configure(options =>
{
    //パスワード設定
    options.Password.RequiredLength = 6;
    options.Password.RequireDigit = true;
    options.Password.RequireNonAlphanumeric = false;
    options.Password.RequireLowercase = false;
    options.Password.RequireUppercase = false;
});
オプションとして新たに追加する