- PR -

ASP.NET2.0多言語対応サイトの更新方法について

1
投稿者投稿内容
BT
ベテラン
会議室デビュー日: 2006/09/24
投稿数: 81
お住まい・勤務地: Tokyo
投稿日時: 2007-05-10 11:42
ASP.NET2.0で多言語対応をしてみようかなと思っています。
@ITの.NET TIPSあたりに記事がありましたのでそのあたりを参考にやり方は分かってきました。
http://www.atmarkit.co.jp/fdotnet/dotnettips/445aspmultilangres/aspmultilangres.html

ただ、静的なコンテンツはこれでよいとしても、ASP.NETを使っている以上、XMLファイルやDB等からコンテンツを読み込んできて動的に表示したい、またウェブ画面上でその内容を変更したいと思うのは当然(?)考えると思います。
そこで、そういう場合の多言語対応のやり方についてアドバイスいただければと思います。

私が想定した方法としては、

(1)リソースファイルを使わずにDB等に言語数分コンテンツを用意してリクエストのカルチャーに応じて切り替える
(2)リソースファイル自体を書き換える(リクエスト判別ロジックが不要)

のどちからであろうと考えました。
(1)については、@ITの記事、
http://www.atmarkit.co.jp/fdotnet/dotnettips/510asplocalizesitemap2/asplocalizesitemap2.html
のサイトマップの切替方法にあるように、言語数分コンテンツを作成しておき、
if (Request.UserLanguages(0).StartsWith("ja"))
という感じでリクエストを判別してデータソースからの読み込みを変更すればよいのではと考えました。

(2)については、resxファイルをメモ帳で開くと、どうやらxml形式のようですので、DOMなどを使って書き換えは可能だろうという気はしますが、更新の仕組みはかなり大変そうな感じがします。ただ、読み出し側は何もしなくてよいのでコードビハインド側はスッキリします。

そこでお聞きしたいのは、どちらの方法が一般的なのか、あるいはこれ以外にもっとよい方法があるのか?また、リソースファイルを変更するとしてもDOMを使ったりするのではなく、もっと他に簡単な仕組みが用意されていたりするのではないか?というところです。

よろしくお願いします。

タイトルがうまくないので少し変えました。

[ メッセージ編集済み 編集者: BT 編集日時 2007-05-10 12:23 ]
1

スキルアップ/キャリアアップ(JOB@IT)