私はAsp.Net MVC Webサイトを持っています。 Webサイトにはいくつかの通知があり、システムがユーザーに送信する通知をローカライズする必要があります。 StackOverflowのようなものですが、ユーザーが言語を変更したときに、それらの言語で通知を表示する必要があります。システムメッセージのローカライゼーション
これには最適な解決策がありますか?メッセージをenum
とし、関連情報のIDを数えてint
として保存することができました。このように:
public class NotificationMessage
{
[Required]
public virtual ApplicationUser User { get; set; }
public NotificationMessageType Type { get; set; }
public int Id1 { get; set; }
public int Id2 { get; set; }
public int Id3 { get; set; }
}
この問題はIDです。彼らはあまり意味がありませんし、強く型付けされていないので、型に基づいてそれらを使用する方法を知っていなければなりません。
他の解決方法は、単に文字列として保存し、言語が英語でない場合に翻訳を試みることです。それは簡単に厄介かもしれない。
最終的な方法は、メッセージを現在選択されている言語として保存することです。言語を変更すると、メッセージはそのままで新しいメッセージは新しい言語になります。
多分、これにはより良い、より標準的なアプローチがありますが、私はこれらを考え出しました。
推奨方法のがそれだけを選択したメッセージに応じて通知を送信し、合格する必要があるときに
ショーとして、異なる言語でのマスターとして、一度すべての通知を格納する必要が提案としてこれはリソースを使用することです。この記事を見てください:http://www.c-sharpcorner.com/UploadFile/4d9083/globalization-and-localization-in-Asp-Net-mvc-4/ – JuanR
@Juan私はリソースについて知っています。問題は、通知を保存する方法ですか? –