2016年4月15日金曜日

ASP NET MVCでログイン状態が維持されない場合

ASP NET MVCでログイン状態を保持しようとして、
ログイン部分にある
Rememberをtrueにしたり、
Startup.Auth.csの
ConfigureAuthにタイムアウト設定
ExpireTimeSpan = TimeSpan.FromDays(30),
SlidingExpiration = true
等を追加しても、
なかなか上手く行かない場合は、
MachineKeyの設定がされていない場合があります。

MachineKeyに付いては下記のサイトが詳しく説明してくれています。
http://blog.shibayan.jp/entry/20130331/1364728631

また、NuGetパッケージも作成してくれています。
このパッケージはインストールするだけでMachineKeyを設定してくます。
http://blog.shibayan.jp/entry/20150703/1435897073

便利な情報・ツールを提供してくれて、
いつも感謝です。

ASP NET MVC でAjax

いつもASP NET MVCでAjaxでデータの取得などをやろうとすると、
あちこちのサイトや過去作ったものとかかを探しまわっていたので、
ここに保存。

・Controllerに
public JsonResult ApiGetABC(){
    var photos = from m in Photo
                      select m;
    return Json(photos, JsonRequestBehavior.AllowGet);
}

・Javascriptni
(jQueryを読み込み済として)
$.ajax({
    url: "",
    type: "GET",
    dataType: "json",
    success: function (photos){
        $(photos).each(function (index, photo){
            // 何かする
        });
    }
});