asp.netとc#を使用して多言語ニュースポータルサイトを開発しています。現在、サイトは2つの言語をサポートしており、必要に応じて他の言語にも拡張されます。サイトの基本的な枠組みを作るのは私の仕事です。クライアントの要件に基づいて、異なる言語のウェブサイトのデータベースに格納されるコンテンツが異なる場合があります。だから、英語やアムハリ語のコンテンツを保存するために、ニュースをさまざまな言語(tblNews_EN、tblNews_amなど)で保存するためのテーブルを作成しました。動的タイプをIQueryableに作成する<T>実行時に#
最新のニュースを取得するクラスがありますが、それらのクラスを一般化し、ユーザーが要求している特定のカルチャの最新ニュースを取得したいと考えています。当初、tblNews_ENテーブルから最新のニュースを取得するためにしか使えない次のようなものがありました。
public IQueryable<GetNews> GetTopExtraNews()
{
var topExtraNews = from p in db.GetNews
where p.TopOrderPriority == 2
orderby p.NewsDate descending
select p;
return topExtraNews;
}
ここで、GetNewsは、tblNews_ENテーブルに対応するEntityクラスです。
ここでは、選択したカルチャに応じて異なるテーブルのオブジェクトを返すように一般化したいと考えています。私はIQueryableのようなものを使用しようとしましたが、これは私の場合に対処するための最良の選択だとは思わない。だから、これを行うためのより良い選択肢がありますか?
なぜOrchard CMSのように、すでにこれを行うツールを使用していませんか? –