基本信息
源码名称:asp.net MVC 实现多国语言建站解决方案
源码大小:0.02M
文件格式:.zip
开发语言:C#
更新时间:2016-02-19
   友情提示:(无需注册或充值,赞助后即可获取资源下载链接)

     嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300

本次赞助数额为: 2 元 
   源码介绍

使用方法:

- <li>@Html.ActionLinkLocalization("English", "Index", "Locales", new { lang = "en_US" })</li>
- <li>@Html.ActionLinkLocalization("Türkçe", "Index", "Locales", new { lang = "tr_TR" })</li>
and more...
Or
- <a href="Locales/?lang=en_US">English</a>
- <a href="Locales/?lang=tr_TR">Türkçe</a>


// @yasinkuyu
// 05/08/2014

using System.Web.Mvc;
using System.Web.Routing;

namespace Insya.Localization.Helpers
{
    public static partial class HtmlHelperExtensions
    {

        /// <summary>
        /// MVC Action link localization html helper
        /// Example @Html.ActionLinkLocalization("homepage", "Index", "Home") -> <item id="homepage">Home Page</item>
        /// Output : <a href="homapageurl"></a>
        /// </summary>
        /// <param id="htmlHelper"></param>
        /// <param id="linkText"></param>
        /// <param id="actionName"></param>
        /// <param id="controllerName"></param>
        /// <param id="routeValues"></param>
        /// <param id="htmlAttributes"></param>
        /// <returns></returns>
        public static MvcHtmlString ActionLinkLocalization(this HtmlHelper htmlHelper, string linkText, string actionName, string controllerName, object routeValues = null, object htmlAttributes = null)
        {
            var urlHelper = new UrlHelper(htmlHelper.ViewContext.RequestContext);
            var tagBuilder = new TagBuilder("a") { InnerHtml = Localization.Localize(linkText) };

            tagBuilder.Attributes["href"] = urlHelper.Action(actionName.ToLowerInvariant(), controllerName.ToLowerInvariant(), routeValues);

            tagBuilder.MergeAttributes(new RouteValueDictionary(htmlAttributes));

            return MvcHtmlString.Create(tagBuilder.ToString());
        }
    }
}