前言:
发现这个问题,有不少人提起过,所以就简单写成文章吧。
接下来看如何在Aries 框架中使用存储过程,整体步骤和绑定普通视图差不多。
步骤一:新建一个空视图。
可以在SqlCode管理中,创建一个空的视图,主要用于显示的表结构:
所以select 的空字段名,和最终存储过程出来的字段名一致即可。
步骤二:页面调用V_P_XXX
<html><body> ???<table id="grid"></table></body></html><script type="text/javascript"> ???var dg = new AR.DataGrid("V_P_XXX"); ???dg.bind();</script>
上面两步,和普通视图一样,页面呈现之后,也可以开始配置下表头。
步骤三:根据V_P_XXX名称,重写Select方法,调存储过程,并输出数据。
public class DemoController : Aries.Core.Controller ???{ ???????protected override MDataTable Select(GridConfig.SelectType st) ???????{ ???????????switch (ObjName) ???????????{ ???????????????case "V_P_XXX": ???????????????????using (MProc proc = new MProc("存储过程名")) ???????????????????{ ???????????????????????proc.Set("参数A", 1); ???????????????????????proc.Set("参数B", "sdfd"); ???????????????????????return proc.ExeMDataTable(); ???????????????????} ???????????????case "V_Test"://处理Demo中文本数据库 ???????????????????MDataTable dt = null; ???????????????????using (MAction action = new MAction(CrossDb.GetEnum("Demo_TestA"))) ???????????????????{ ???????????????????????dt = action.Select(); ???????????????????} ???????????????????dt.JoinOnName = "ID"; ???????????????????MDataTable joinDt = dt.Join("Demo_TestB", "ID"); ???????????????????return joinDt.Select(PageIndex, PageSize, GetWhere() + GetOrderBy("ID"), GridConfig.GetSelectColumns(ObjName, st)); ???????????} ???????????return base.Select(st); ???????} ???}
这样就打完收工了。
ASP.NET Aries 高级开发教程:使用存储过程(番外篇)
原文地址:https://www.cnblogs.com/cyq1162/p/10556190.html