MVC多语言设置 实战简洁版
此方式可以通过更改进行更改进程语言设定,支持从系统获取默认的区域设定,支持自定义,自定义的方式可以为cookie,可为资料库获取,session等方式。
具体怎么设定就看个人需要了。
第一步:
添加资源文件,添加的时候要将资源文件类型设定为public
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQ0AAAAzCAIAAAACd8o2AAAEO0lEQVR4nO2cT2rbQBSHc5bsBQYvfICAIS3tbhAYsozJwmQ9CON7DGN8jZHdbbftbnSOzg26GGn+Sn6y3cZO8vv4LaRYtlQyn997UuhdUUwQBDmeu6tfAYLcfuAJgtCBJ2Pz8DBHXK7+63jjDHpyf38/n3+5+vXdTh4e5tPpDJlOZ/DEB54kgSfwpCfwJAk8gSc9gSdJ4Ak86ckRT5jQigc/4XW0W0yKYsKVFmxSMKlNhpas97281qI875/BRC1YeEky2v0XOdeTp23TbBf5zzd7c1hfe8XDk5E5s560GgzsFsWkKEqhTe5PUZRCeU+4qnm7XalYpu4DKxHIExwfJnxvzYtSBHb6a2BSm58/2pd+/zL5NR9L7MnTtvGnaLZP53uy2DWm94DbDTzxGdF3JSs7Wt8DC3oSe1IpVRW8VkJqU3NXW+Ii46uQ244dsMXEVTm7m6lbKWMvKd8YlcwTt7g3e2P263M9eYeBJz6DnthWSsdrPTvMesKEjh0qI094bawn3L3LLn//gVzYgyultbY/Z1KF7ZnbtRuueWNSB58T9IpeDyb0+E5v2JPZYtsMlxR48hFyXj3JasKgJ+HYYDso995SKK19PXH1wXZN7XgjeCmUZLxWouSxddGcU1Qq2k10KoUOG7xum0lt38Wkptow2pPFrml2i/QAu7HZd1fdVR7nSSiMP+xoLwdP3tyT5+fnx8evF3mSVoyRnlRCSBXXk74veH+u9tNaAZI5xyje2wda90KLwnbrhNZr0BM3YAx6YowzYbFrUj3CjSP921tnuXwRAcvly6f25Nu3770vjPUk+tr2M/cITyZ+PuHt5N02Zjpcu7QnXBmTV4P4wgY8Sc51kifBGO+EGawnfv2t91aGzJP1wew3V9cjzGr1aiVZrV4/ez0ZemGsJ+HMHSzNUfOJ96T9BCa0XfFMSJ6dq98TJrWq3Eta9wv8HzzJpo7Ik83e9HrytG3ejSdWlUQSeHKiJ7xWPL6vFU3kp9zviupJ0n215zKBDEpIFc8nvnAxqa0GJ80nI0J74t2YTdcHY4K+ywmwPphRfddmi/nklnL28xNjb1VF48T5nnSvMqmDISc6V+GPUdlNqvQ5Y3ZYd7/LPVppy52/OXbBHO+ycN3Yfhf1XdtDV1PDkT2b4xe7Jj3sFgNPfOjnJ8GN166/8m70e2IfgPhF7+6Vdct39Ld7ktAT1+zFTznzkf2S5yefOvDE5wP+fReT2vgnleqi5/GfOvDE5wN6clngCTzpCTxJAk/gSU/gSRJ4Ak96Ak+SwBN4gtC5+n/dcFO5+q/jjQNPEIQOPEEQOvAEQejc/QEAUMATAGjgCQA08AQAGngCAA08AYAGngBAA08AoIEnANDAEwBo4AkANPAEABp4AgANPAGABp4AQANPAKCBJwDQwBMAaOAJADTwBAAaeAIADTwBgAaeAEDzFzuwiqxgOey5AAAAAElFTkSuQmCC" alt="" />
第二步:
新定义类:
namespace System.Web.Mvc
{
public static class LangHelper
{
//界面普通文字的多语言
public static string GetLangbyKey(this HtmlHelper htmlhelper, string key)
{
string lang = "zh-CN"; Thread.CurrentThread.CurrentUICulture = new CultureInfo(lang);
Thread.CurrentThread.CurrentCulture = Thread.CurrentThread.CurrentUICulture; Type resourceType = (Thread.CurrentThread.CurrentUICulture.Name == "zh-CN") ? typeof(WebApplication4.Resources.zh_CN) : typeof(WebApplication4.Resources.zh_TW); PropertyInfo p = resourceType.GetProperty(key);
if (p != null)
return p.GetValue(null, null).ToString();
else
return "undefined";
} //js定义多语言弹出框
public static string LangOutJsVar(this HtmlHelper htmlhelper, string key)
{
string lang = "zh-CN"; Thread.CurrentThread.CurrentUICulture = new CultureInfo(lang);
Thread.CurrentThread.CurrentCulture = Thread.CurrentThread.CurrentUICulture; Type resourceType = (Thread.CurrentThread.CurrentUICulture.Name == "zh-CN") ? typeof(WebApplication4.Resources.zh_CN) : typeof(WebApplication4.Resources.zh_TW);
PropertyInfo p = resourceType.GetProperty(key);
if (p != null)
return string.Format("var {0} = '{1}'", key, p.GetValue(null, null).ToString());
else
return string.Format("var {0} = '{1}'", key, "undefined");
}
}
}
页面使用方法
<h2>@Html.GetLangbyKey("name")</h2>
MVC多语言设置 实战简洁版的更多相关文章
- 第八篇 :微信公众平台开发实战Java版之如何网页授权获取用户基本信息
第一部分:微信授权获取基本信息的介绍 我们首先来看看官方的文档怎么说: 如果用户在微信客户端中访问第三方网页,公众号可以通过微信网页授权机制,来获取用户基本信息,进而实现业务逻辑. 关于网页授权回调域 ...
- 第七篇 :微信公众平台开发实战Java版之如何获取微信用户基本信息
在关注者与公众号产生消息交互后,公众号可获得关注者的OpenID(加密后的微信号,每个用户对每个公众号的OpenID是唯一的.对于不同公众号,同一用户的openid不同). 公众号可通过本接口来根据O ...
- 第三篇 :微信公众平台开发实战Java版之请求消息,响应消息以及事件消息类的封装
微信服务器和第三方服务器之间究竟是通过什么方式进行对话的? 下面,我们先看下图: 其实我们可以简单的理解: (1)首先,用户向微信服务器发送消息: (2)微信服务器接收到用户的消息处理之后,通过开发者 ...
- 第二篇 :微信公众平台开发实战Java版之开启开发者模式,接入微信公众平台开发
第一部分:微信公众号对接的基本介绍 一.填写服务器配置信息的介绍 登录微信公众平台官网后,进入到公众平台后台管理页面. 选择 公众号基本设置->基本配置 ,点击“修改配置”按钮,填写服务器地址( ...
- ASP.NET MVC 4高级编程(第4版)
<ASP.NET MVC 4高级编程(第4版)> 基本信息 作者: (美)Jon Galloway Phil Haack Brad Wilson K. Scott All ...
- 第九篇 :微信公众平台开发实战Java版之如何实现自定义分享内容
第一部分:微信JS-SDK介绍 微信JS-SDK是微信公众平台面向网页开发者提供的基于微信内的网页开发工具包. 通过使用微信JS-SDK,网页开发者可借助微信高效地使用拍照.选图.语音.位置等手机系统 ...
- 第六篇 :微信公众平台开发实战Java版之如何自定义微信公众号菜单
我们来了解一下 自定义菜单创建接口: http请求方式:POST(请使用https协议) https://api.weixin.qq.com/cgi-bin/menu/create?access_to ...
- 第五篇 :微信公众平台开发实战Java版之如何获取公众号的access_token以及缓存access_token
一.access_token简介 为了使第三方开发者能够为用户提供更多更有价值的个性化服务,微信公众平台 开放了许多接口,包括自定义菜单接口.客服接口.获取用户信息接口.用户分组接口.群发接口等, 开 ...
- 第四篇 :微信公众平台开发实战Java版之完成消息接受与相应以及消息的处理
温馨提示: 这篇文章是依赖前几篇的文章的. 第一篇:微信公众平台开发实战之了解微信公众平台基础知识以及资料准备 第二篇 :微信公众平台开发实战之开启开发者模式,接入微信公众平台开发 第三篇 :微信公众 ...
随机推荐
- Ubuntu 14.04 编译 Android 4.2.2 for Tiny4412
. . . . . 在学校里是用 Redhat 6.4 编译的 Android 4.2.2 很顺利,把源码包拷贝到笔记本上的 Ubuntu 14.04 上再编译遭遇了各种坑,所以便有了这篇博客记录解决 ...
- 解决nginx reload失败
1. 失败提示信息 nginx: [error] open() : No such file or directory) 2. 解决方法 /usr/local/nginx/sbin/nginx -c ...
- Java输出字符串格式问题 .UnknownFormatConversionException
今天遇到一个问题,使用JSoup挖掘出的数据一直出错 Exception in thread "main" java.util.UnknownFormatConversionExc ...
- Python 实现多元线性回归预测
一.二元输入特征线性回归 测试数据为:ex1data2.txt ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ,, ...
- Extjs4.x Ext.tree.Panel 遍历当前节点下的所有子节点
Ext.define('WMS.controller.Org', { extend: 'Ext.app.Controller', stores: ['OrgUser', 'OrgTree'], mod ...
- 百度地图Api进阶教程-点聚合9.html
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...
- avcodec_open2()分析
该函数用于初始化一个视音频编解码器的AVCodecContext. int avcodec_open2(AVCodecContext *avctx, const AVCodec *codec, AVD ...
- atmega328 熔丝
http://www.geek-workshop.com/thread-5772-1-1.html AVR_fighter http://wenku.baidu.com/view/0c0a8ccc61 ...
- Navi.Soft31.开发工具(含下载地址)
1系统简介 1.1功能简述 在软件开发过程中,我们需要经常对字符串.文件.数据库操作.有时需要浏览Json格式串,有时需要浏览Xml格式串,有时需要读取txt或excel文件,有时需要对数据库访问.本 ...
- github开源库(二)
21.drag-sort-listview DragSortListView(DSLV)是Android ListView的一个扩展,支持拖拽排序和左右滑动删除功能.重写了TouchIntercept ...