データベース主導のメタ キーワード/説明を作成する必要があります。これらのレコードをデータベース、xml 形式で保存すると思います。それは文化ごとになるからです。
どうすればこれを行うことができますか?
フィードバック、提案、ヘルプ、大歓迎です。ありがとう
データベース主導のメタ キーワード/説明を作成する必要があります。これらのレコードをデータベース、xml 形式で保存すると思います。それは文化ごとになるからです。
どうすればこれを行うことができますか?
フィードバック、提案、ヘルプ、大歓迎です。ありがとう
変更する必要があるのは、キーワーク/説明を返すメソッドの呼び出しだけです
Thread.CurrentThread.CurrentUICulture を使用して、ユーザー カルチャを判断できます。
カルチャを自動変更するには、web.config で変更する必要があります。
例: (Web.Config)
<globalization uiCulture="auto" culture="auto" />
(コントローラ)
ViewBag.Description = GetDescription(pageId, Thread.CurrentThread.CurrentUICulture.Name)
(意見)
<meta name="description" content="@ViewBag.Description ">
すべてのモデル オブジェクトの親インターフェイスを作成します。そして、あなたは持つことができます:
public interface IBaseMasterViewDto
{
int PageId { get; set; }
string Title { get; set; }
string MetaKeywords { get; set; }
string MetaDescription { get; set; }
}
したがって、マスタービューで使用できます
<%@ Master Language="C#" Inherits="System.Web.Mvc.ViewMasterPage<IBaseMasterViewDto>" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
<head>
<title><%: Model.Title %></title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<meta name="keywords" content="<%: Model.MetaKeywords %>" />
<meta name="description" content="<%: Model.MetaDescription %>" />
それが役に立てば幸い。
1 - コントローラーで (モデルから) キーワード/説明を取得します
2 - それらを Viewbag プロパティに割り当てます 3 - ビューバッグ プロパティをレイアウト (またはビュー) に表示します
また
モデルにキーワード/説明を割り当て、コントローラーのパラメーターとしてビューに渡します。
文化について:
メソッドコントローラー(およびルート)にパラメーターとして配置するだけです。
その後、キーワード/説明を取得するメソッドにこのパラメーターを渡す必要があります。
シェーン、
私は少し前に SO で似たような質問に答えました。文化的要素については説明しませんでしたが、上記の fujiy の回答は、ある意味でそれに向かっています。また、alexlのインターフェースは、タイプされたビューデータ要素を緩めるためのはるかに優れたソリューションです(同様の質問での私の回答による)。とにかく、これが私がその質問に対して「当日」に答えたものです: