“.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">
    <ItemTemplat上海企业网站设计与制作e>
    <tr>
        <td>
            <%#Stu(_=>_.Id)%>
        </td>
        <td>
            <%#Stu(_=>_.User.Name)%>
        &上海闵行企业网站制作'>上海徐汇企业网站制作lt;/td>            
    </tr>
    </ItemTemplate>
    </asp:Repeat上海闵行企业网站设计与制作er>
</table>

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

我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布 上海徐汇企业网站设计与制作!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布! 上海网站建设!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!我要发布!!
目录
相关文章
|
2月前
|
开发框架 前端开发 .NET
VB.NET中如何利用ASP.NET进行Web开发
在VB.NET中利用ASP.NET进行Web开发是一个常见的做法,特别是在需要构建动态、交互式Web应用程序时。ASP.NET是一个由微软开发的开源Web应用程序框架,它允许开发者使用多种编程语言(包括VB.NET)来创建Web应用程序。
55 5
|
3月前
|
开发框架 JSON .NET
ASP.NET Core 标识(Identity)框架系列(三):在 ASP.NET Core Web API 项目中使用标识(Identity)框架进行身份验证
ASP.NET Core 标识(Identity)框架系列(三):在 ASP.NET Core Web API 项目中使用标识(Identity)框架进行身份验证
|
3月前
|
开发框架 .NET 开发工具
【Azure 应用服务】App Service 的.NET Version选择为.NET6,是否可以同时支持运行ASP.NET V4.8的应用呢?
【Azure 应用服务】App Service 的.NET Version选择为.NET6,是否可以同时支持运行ASP.NET V4.8的应用呢?
|
4月前
|
开发框架 搜索推荐 前端开发
【.NET全栈】ASP.NET开发Web应用——Web部件技术
【.NET全栈】ASP.NET开发Web应用——Web部件技术
|
3月前
分享一份 .NET Core 简单的自带日志系统配置,平时做一些测试或个人代码研究,用它就可以了
分享一份 .NET Core 简单的自带日志系统配置,平时做一些测试或个人代码研究,用它就可以了
|
3月前
|
开发框架 .NET 数据库连接
ASP.NET Core 标识(Identity)框架系列(一):如何使用 ASP.NET Core 标识(Identity)框架创建用户和角色?
ASP.NET Core 标识(Identity)框架系列(一):如何使用 ASP.NET Core 标识(Identity)框架创建用户和角色?
|
5月前
|
机器学习/深度学习 JSON 测试技术
CNN依旧能战:nnU-Net团队新研究揭示医学图像分割的验证误区,设定先进的验证标准与基线模型
在3D医学图像分割领域,尽管出现了多种新架构和方法,但大多未能超越2018年nnU-Net基准。研究发现,许多新方法的优越性未经严格验证,揭示了验证方法的不严谨性。作者通过系统基准测试评估了CNN、Transformer和Mamba等方法,强调了配置和硬件资源的重要性,并更新了nnU-Net基线以适应不同条件。论文呼吁加强科学验证,以确保真实性能提升。通过nnU-Net的变体和新方法的比较,显示经典CNN方法在某些情况下仍优于理论上的先进方法。研究提供了新的标准化基线模型,以促进更严谨的性能评估。
144 0
|
5月前
|
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访问权限,并监控镜像拉取和容器启动日志。
215 0
|
2月前
|
开发框架 前端开发 JavaScript
ASP.NET MVC 教程
ASP.NET 是一个使用 HTML、CSS、JavaScript 和服务器脚本创建网页和网站的开发框架。
38 7
|
2月前
|
存储 开发框架 前端开发
ASP.NET MVC 迅速集成 SignalR
ASP.NET MVC 迅速集成 SignalR
54 0
下一篇
无影云桌面