一起谈.NET技术,ASP.NET绑定的技巧

简介: Data Binding似乎是ASP.NET老掉牙的节目,无非Eval之流。其实稍作加工就能使其脱胎换骨。在代码中加入://推荐放在基类protected virtual object ExpHelper(Func func){ var itm = GetDataItem(); ...

Data Binding似乎是ASP.NET老掉牙的节目,无非Eval之流。其实稍作加工就能使其脱胎换骨。

在代码中加入:

//推荐放在基类
protected virtual object ExpHelper<TEntity, TREsult>(Func<TEntity, TREsult> func)
{
    var itm = GetDataItem();
    return func((TEntity)itm);
}
//Student是数据类
protected object Stu<TResult>(Func<Student, TResult> func)
{
    return ExpHelper<Student, TResult>(func);
}

这样在ASPX页面就可以用强类型的Eval了

<table>        
    <asp:Repeater runat="server">
    <ItemTemplate>
    <tr>
        <td>
            <%#Stu(_=>_.Id)%>
        </td>
        <td>
            <%#Stu(_=>_.User.Name)%>
        </td>            
    </tr>
    </ItemTemplate>
    </asp:Repeater>
</table>

由于不是反射,性能大为提升并且语法具有intellisense,很酷吧。

我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!
目录
相关文章
|
开发框架 前端开发 .NET
VB.NET中如何利用ASP.NET进行Web开发
在VB.NET中利用ASP.NET进行Web开发是一个常见的做法,特别是在需要构建动态、交互式Web应用程序时。ASP.NET是一个由微软开发的开源Web应用程序框架,它允许开发者使用多种编程语言(包括VB.NET)来创建Web应用程序。
385 7
|
开发框架 JSON .NET
ASP.NET Core 标识(Identity)框架系列(三):在 ASP.NET Core Web API 项目中使用标识(Identity)框架进行身份验证
ASP.NET Core 标识(Identity)框架系列(三):在 ASP.NET Core Web API 项目中使用标识(Identity)框架进行身份验证
298 1
|
开发框架 搜索推荐 前端开发
【.NET全栈】ASP.NET开发Web应用——Web部件技术
【.NET全栈】ASP.NET开发Web应用——Web部件技术
|
开发框架 .NET 开发工具
【Azure 应用服务】App Service 的.NET Version选择为.NET6,是否可以同时支持运行ASP.NET V4.8的应用呢?
【Azure 应用服务】App Service 的.NET Version选择为.NET6,是否可以同时支持运行ASP.NET V4.8的应用呢?
153 0
|
开发框架 .NET 数据库连接
ASP.NET Core 标识(Identity)框架系列(一):如何使用 ASP.NET Core 标识(Identity)框架创建用户和角色?
ASP.NET Core 标识(Identity)框架系列(一):如何使用 ASP.NET Core 标识(Identity)框架创建用户和角色?
342 0
|
JSON 开发框架 前端开发
技术经验分享:ASP.NETCoreMVC打造一个简单的图书馆管理系统(修正版)(七)学生信息增删
技术经验分享:ASP.NETCoreMVC打造一个简单的图书馆管理系统(修正版)(七)学生信息增删
188 0
|
Linux C# C++
【.NET Developer】创建ASP.NET Core Blazor项目并打包为Linux镜像发布到Azure应用服务
本文介绍了如何使用VS2019和.NET框架创建一个Blazor应用,并将其部署到Azure应用服务。首先,Blazor是一个使用C#而非JavaScript构建交互式Web UI的框架,支持共享服务器和客户端应用逻辑,以及与Docker和Azure集成。任务包括创建Blazor项目,配置Dockerfile为Linux容器,本地测试,发布到Azure Container Registry (ACR),然后在Azure App Service for Container上部署。在部署过程中,需确保Docker设置正确,开启ACR的Admin访问权限,并监控镜像拉取和容器启动日志。
783 0
|
开发框架 前端开发 .NET
ASP.NET CORE 3.1 MVC“指定的网络名不再可用\企图在不存在的网络连接上进行操作”的问题解决过程
ASP.NET CORE 3.1 MVC“指定的网络名不再可用\企图在不存在的网络连接上进行操作”的问题解决过程
524 0
|
开发框架 前端开发 JavaScript
ASP.NET MVC 教程
ASP.NET 是一个使用 HTML、CSS、JavaScript 和服务器脚本创建网页和网站的开发框架。
320 7
|
存储 开发框架 前端开发
[回馈]ASP.NET Core MVC开发实战之商城系统(五)
经过一段时间的准备,新的一期【ASP.NET Core MVC开发实战之商城系统】已经开始,在之前的文章中,讲解了商城系统的整体功能设计,页面布局设计,环境搭建,系统配置,及首页【商品类型,banner条,友情链接,降价促销,新品爆款】,商品列表页面,商品详情等功能的开发,今天继续讲解购物车功能开发,仅供学习分享使用,如有不足之处,还请指正。
403 0