続) LightSwitch Beta 2 で日本語 SharePoint をデータソースにするとビルドエラー #LightSwitchJPN

注意:
この投稿は、LightSwitch Beta 2 時点でのものです。以下に記載する内容は RTM で改修されています。

 

LightSwitch Beta 2 で日本語 SharePoint をデータソースにするとビルドエラーになる 件の続きです。

もったいぶって2回に分けるほどの内容でもないんですが・・・。


日本語 SharePoint をデータソースにすると、LightSwitch Beta 2 ではビルドエラーになります。ビルド失敗するプロジェクトには、ユーザー情報リストに “作成者Id”、“更新者Id” というプロパティーが含まれてます、というのが前回の話。

SNAGHTMLa4eca2

ビルドエラー時のメッセージを見ると、

SNAGHTMLa55968

“作成者ID”、“更新者ID” の定義が見当たらない、と言われてます。

“Id” か “ID” か、つまり “D” が大文字か小文字かの違いはあるものの生成されたコードでユーザーの ID に関わる部分に間違いがあるということです。自己参照に関するコード生成を間違えていそうです。
なんにしても調べるには十分な情報だと思えます。


LightSwitch のソリューションエクスプローラーはビュー切り替えができます。デフォルトでは論理ビューになっていますが、これを [ファイルの表示] に変えてみます。

image

エンティティ (データ) に関するバグを追っているので、注目するのは Data フォルダ

image

ApplicationDefinitions.lsml” というファイルがあります。アプリケーション定義の LightSwitch Markup Language って感じですね。開いてみると、

SNAGHTML3ea91b

“作成者Id” (d は小文字) というプロパティ“作成者ID” (D は大文字) という外部キープロパティ があります。怪しい・・・。
(説明が面倒になるので、ここからは “更新者Id”、“更新者ID” に言及するのは省略)

ビルドに成功するソリューション (英語 SharePoint ) ではどうなっているか見てみます。

SNAGHTML479953

プロパティには “作成者Id” がありません。また、外部キープロパティが “作成者Id” (d は小文字) です。

生成している定義ファイルが異なっているわけですから、ビルドの生成・失敗に違いがあっても不思議じゃないですね。根本の原因はどうやらここです。


もう少し調べてみます。

自動生成される定義ファイルが、英語 SharePoint、日本語 SharePoint で異なっているとしても、それに対応するロジックがきちんと生成されていれば、仮に実行時エラーなんてことはあるにしても、ビルドエラーというのは腑に落ちません。
(いや、実行時エラーもあっちゃいけないことだけど)

この辺を見てみます。

image

次に怪しそうな “Common” フォルダ を見てみましたが、それらしいものは見当たりません。そこで [すべてのファイルを表示] してみました。すると・・・

Generated Artifacts” ・・・怪しい。しかも “EntityG01.cs” なんて、ますます怪しいので開いてみます。

SNAGHTML6350c0

“作成者Id” のコードはあります。が、“作成者ID” のコードはありません。

ビルド時に “作成者ID” の定義うんぬんというエラーは、こういうことですね。データ定義上では存在するプロパティに対してコードが存在しないわけです。そりゃコンパイラだって困ります。


では、結局問題なのはどこか。

“EntityG01.cs” のほうは多分これは正しいコードが生成されていると思います。
問題はやはり、“ApplicationDefinitions.lsml” が ID 絡みで間違った定義を生成してしまっている ことじゃないでしょうか。
なにしろ英語 SharePoint に対しては正しい定義ファイルを生成してくれているわけです。

MS にはここをフィードバックすることにします。(英語か、はぁ~)


ということで、LightSwitch の次のリリースまでは、SharePoint なアプリケーション開発は英語環境(面倒なので、英語 Windows、英語 SharePoint、英語 LightSwitch) で評価したいと思います。
近いうちに勉強会で LightSwitch with SharePoint の話をしたいと思っていますが、そこも当然英語環境で行きます。

広告
カテゴリー: LightSwitch, SharePoint タグ: , , パーマリンク

続) LightSwitch Beta 2 で日本語 SharePoint をデータソースにするとビルドエラー #LightSwitchJPN への3件のフィードバック

  1. ピンバック: おまけ) LightSwitch で日本語 SharePoint をデータソースにするとビルドエラー・・・の暫定的な対応方法 #LightSwitchJPN « 技術との戯れ

  2. ピンバック: SharePoint / FAST 評価版 vhd には SP1 をインストールしないほうがいい? « 技術との戯れ

  3. ピンバック: おまけ) LightSwitch Beta 2 で日本語 SharePoint をデータソースにするとビルドエラー・・・の暫定的な対応方法 #LightSwitchJPN « 技術との戯れ

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中