2

簡単な電子商取引 Web アプリケーションを作成しました。アプリケーションを作成したとき、単一の Web サイトとしてデプロイされると思っていたので、.cshtmlファイルは次のようになります。

<head>
    <title>My Company Storefront</title>
    <meta name="description" content="Welcome to My Company online store" />
    ....
</head>

これで、Web アプリケーションが 2 番目の Web サイトとしてデプロイされます。一部のコンテンツを変更する必要があります。

<head>
    <title>Second Company Storefront</title>
    <meta name="description" content="Welcome to Second Company online store" />
    ....
</head>

2 つのデプロイは同じコードを共有しますが、.cshtmlファイル内のテキスト コンテンツの一部が異なります。

これを達成するための良い方法は何ですか?

システムを見てきました.resxが、少し重いようです。各デプロイには、1 つのリソース ファイルしかありません。また、外部のプログラマー/管理者がリソースを変更することを期待しています。

.resx適していますか?

4

2 に答える 2

2

バックエンドにデータベース (これがオンライン ストアの場合はおそらく既にあるはずです) にデータベースを配置するよりも悪い結果になる可能性があるように思えます。このデータベースでは、サイトごとに変更できる翻訳のテーブルを保持できます。 .

_id     _expression    _translation
-----------------------------------
1       msgtitle        Welcome to My Company online store

もちろん、これは 2 番目の Web サイトで変更できます。

翻訳を使用するには、アプリケーションの初期化中に何らかの辞書に翻訳をロードし、式をキーとして、翻訳を値として使用します。

<head>
    <title>Second Company Storefront</title>
    <meta name="description" content="@MyCache.Translate["msgtitle"]" />

</head>
于 2013-07-16T12:20:37.567 に答える