Asp.net Vnext IValueProvider
2015-07-06 15:10
555 查看
概述
本文已经同步到《Asp.net Vnext 系列教程 》中]
IValueProvider
根据ValueProvider获取数据,在对数据进行绑定
代码实现
ValueProvider工厂
控制器
启动类
本文已经同步到《Asp.net Vnext 系列教程 》中]
IValueProvider
根据ValueProvider获取数据,在对数据进行绑定
代码实现
private class CustomValueProvider : IValueProvider { //判断否具有指定的前缀 public Task<bool> ContainsPrefixAsync(string prefix) { var result = string.Equals(prefix, "test", StringComparison.OrdinalIgnoreCase); return Task.FromResult(result); } //返回ValueProviderResult public Task<ValueProviderResult> GetValueAsync(string key) { //进行绑定的值 var value = "custom-value-provider-value"; var result = new ValueProviderResult(value, value, CultureInfo.CurrentCulture); return Task.FromResult(result); } }
ValueProvider工厂
public IValueProvider GetValueProvider(ValueProviderFactoryContext context) { if (context.HttpContext.Request.Path.Value.Contains("TestValueProvider")) { return new CustomValueProvider(); } return null; }
控制器
public class HomeController { public string TestValueProvider(string test) { return test; } }
启动类
public class Startup { // For more information on how to configure your application, visit http://go.microsoft.com/fwlink/?LinkID=398940 public void ConfigureServices(IServiceCollection services) { services.AddSingleton<IMemoryCache, MemoryCache>(); services.AddCaching(); services.AddSession(); services.AddMvc() .Configure<MvcOptions>(options => {//添加CustomValueProviderFactory options.ValueProviderFactories.Insert(1, new CustomValueProviderFactory()); }); }
相关文章推荐
- 关于在asp.net中的调试
- aspx 体现mvc 模式的增删改查
- 解密aspx与aspx.cs的关系
- ASP.Net核心对象之context.Server对象几个常用方法
- Web服务器和ASP.Net
- asp了解
- 第1章 ASP.NET4.0开发技术概述
- Picture Aspect Ratio
- ASP.NET 为什么要有 MVC
- ASP.NET分页
- asp.net webapi 多文件上传
- 大型高性能ASP.NET系统架构设计
- ABP(现代ASP.NET样板开发框架)主题线下交流会(上海)开始报名了!
- Asp.Net传值
- ASP.NET动态添加用户控件的方法
- 蛋疼的替换(纯粹是为了vim而vim)
- AspectJ 出现错误::0 can't find referenced pointcut 的解决
- asp、asp.net、.aspx、.ascx、.ashx的简单说明
- 摘录-IT企业必读的200个.NET面试题-08 ASP.NET应用开发
- 【ASP.NET】——基本对象