2013年10月19日土曜日

【Entity Framework】同時実行制御(楽観ロック)を行う (Edit画面にhiddenを追加する)

Entity Framework で同時実行制御を行うにはTimestamp属性をつけるだけでEFが勝手にやってくれます。
(Timestamp属性をつけておけば、ConcurrencyCheckはいらない・・・たぶん)

HogeEntity.cs
public class HogeEntity
    {
        public int HogeEntityId { get; set; }
        public string Name { get; set; }
        public string Value { get; set; }

        [Timestamp]
        [ConcurrencyCheck]
        public byte[] Timestamp { get; set; }
    }


Scaffoldingでコントローラーとビューを作った時はEdit画面にHiddenフィールドを追加してあげないとエラーになります。

Edit.cshtml
@Html.HiddenFor(model => model.Timestamp)

2013年9月10日火曜日

【ASP.NET Webforms】UpdatePanel上でJavaScriptを動かす

ASP.NET WebForms でサーバーサイドで生成したJavaScriptを走らせるには
ClientScript クラスの ClientScript.RegisterStartupScript メソッドなどを利用します。

が、UpdatePanel と一緒だと上記では動作しません。

ScriptManager クラスの ScriptManager.RegisterStartupScript メソッドなどを利用します。

以上、メモまで。

2013年9月7日土曜日

【Visual Studio】 Git Source Control Provider で Webサイトプロジェクトにリポジトリ作成

Visual Studio で新規にWebアプリケーションを作成する時に
「新しいプロジェクト」と「新しいWebサイト」の2種類があります。

その詳細な説明は他に譲るとして
【msdn】
Visual Studio での Web アプリケーション プロジェクトと Web サイト プロジェクト
http://msdn.microsoft.com/ja-jp/library/dd547590.aspx 

【どっとねっとふぁん】様
WebアプリケーションプロジェクトとWebサイトプロジェクト
http://blogonos.wordpress.com/2008/01/21/


ファイル・ディレクトリ構成は以下のとおりです(デフォルト)。

「新しいプロジェクト」の場合は
 ソリューションファイル
 C:\Users\<ユーザ名>\Documents\Visual Studio 2012\Projects\hoge\hoge.sln
 コーディングしたファイル
 C:\Users\<ユーザ名>\Documents\Visual Studio 2012\Projects\hoge\hoge

「新しいWebサイト」の場合は
 ソリューションファイルは
 C:\Users\<ユーザ名>\Documents\Visual Studio 2012\Projects\hoge\hoge.sln
 コーディングしたファイルは
 C:\Users\<ユーザ名>\Documents\Visual Studio 2012\WebSites\hoge


Webサイトプロジェクトの場合、ソリューションファイルと本体のファイルとで
ディレクトリ構成が異なってしまうのですが、Git Source Control Provider を使って
VSからリポジトリを作成しようとすると、ソリューションファイルのあるディレクトリに
「.git」ディレクトリが作成され、本体のファイルをgitで管理できません。

Git Bash や Tortoise Git など Visual Studio 以外から先にリポジトリを作成しておけば
Visual Studio 上で Git Source Control Provider で管理できるようになります。

以上メモまで。
(Gitを使い始めたばかりなので認識に誤りがあればご指摘頂けますと幸いです)

2013年8月10日土曜日

Panasonic GORILLA CN-GL320D エアコン送風口取り付け

トヨタファンカーゴのエアコン送風口にポータブルカーナビを取り付ける方法を紹介いたします。
(※メーカーの推奨する使用法ではないため参考にされる際は自己責任でお願いします)

ポータブルナビはオンボードで利用することが多いと思いますが、
センターメーターの車(写真はトヨタファンカーゴ)の場合取り付け場所に悩むのではないでしょうか。


いくつか方法があると思いますが、エアコンの送風口を利用することが可能です。

[使用する製品]
・Panasonic GORILLA CN-GL320D の付属品であるゴリラ用車載用吸盤スタンド CA-PTQ50D

・セイワ CITY ROAD エアコンテレビスタンド2 P118

(ファンカーゴのような縦型ルーバーへの取り付けも可能)


まず、CA-PTQ50Dを分解します。


カーナビホルダー部分と台座を外したいのですがピンを抜く必要があります。
(これに気づかなくて苦労しました・・・)
使用するのはカーナビホルダー部分です。

エアコンテレビスタンド2 P118の方も分解し、液晶テレビモニターのホルダー部分以外を使用します。



最終的に使用するのは以下の3つの部品です。


このCA-PTQ50Dのカーナビホルダー部分とエアコンテレビスタンド2 P118のネジ部分が
たまたま上手く合うので固定します。
(ちょっと結合が甘い気がしますが、そこは様子見です)


実際にファンカーゴに取り付けると以下のようになります。

Panasonic GORILLA CN-GL320D パーキングブレーキ解除プラグ

先日ポータブルカーナビを購入しました。
Panasonic GORILLA CN-GL320D



サイドブレーキを引いてないと操作できないタイプのカーナビなのですが、
走行中でも助手席の同乗者が操作したいということはよくあると思います。

サイドブレーキを引いてるかどうか検知するセンサーはカーナビの側面についており、
ここをショートさせることで解除できます。
イヤホンジャックより一回りほど小さいジャックとなっており、ネットではネジや
ピンを刺すことでショートさせている人もいるようですが、私は市販されている
解除用のプラグを利用しました。

Amazonなどで「GORILLA パーキングブレーキ解除プラグ」と検索すると出てきます。


プラグを挿入したところが下の写真です。