Ext.Net MVC + Entity Framework 使用经验

 

1Model

1.1 生成Model

如果已生成数据库,那么在生成映射数据库实体类时使用【来自数据库的CodeFirst实体数据模型】

1.2 小数问题

关于数据实体类的成员变量类型,如果是小数类型,默认是保留两位小数,制定小数类型位数方法:

this
.Property(e => e.实体字段)
.HasPrecision(6,4);

1.3 实体类的关系建立

1.3.1 实体中有些属性如果不需要序列化返回,可以使用该特性:

[Newtonsoft.Json.JsonIgnore]
public virtual TestUnit TestUnit { get; set; }

1.3.2 配置一对多的关系

this
 .HasMany(e => e.TestRadioactionResult)
 .WithRequired(e => e.TestRadioaction)

2  View

2.1  Grid复合表头

X.Column()
  .Text(“父表头”)
  .Columns(
X.Column().DataIndex(“源数据字段”).Text(“子表头”)
)

2.2  一个View显示多个Model

@model Zone.Biz.Test.Entities.父类

//控件值绑定
X.TextFieldFor(m => m.属性),
X.TextFieldFor(m => m.子类.属性)

//提交
//直接提交form表单,ation参数用父类接收
 Ext.net.DirectMethod.request(
                {
                    method: 'post',
                    url: '@(Url.Action("SaveVolumetric"))',
                    params: {
                        action: "@(((int)Zone.Biz.Test.Setting.Setting.Action.Save).ToString())",
                        add:"1",
                    },
                    form: App.VolumetricForm,
                    success: function (result)
                    {
                           ...
                     });

2.3     请求Action的几种常用形式

2.3.1 控件服务端事件直接请求

.DirectEvents(o =>
    {
     o.Click.Url = Url.Action("ActionName");
     o.Click.EventMask.ShowMask = true;
     o.Click.FormID = "FormID";
     o.Click.ExtraParams.Add(
     new Parameter()
     {
       Name = "action",
       Value =value1,
       Mode = ParameterMode.Value
       }
      );
     }),

2.3.2 Ajax请求

$.ajax({

type:”post”,

url:”ActionName”,

datatype:”json”,

data:{param1:value1,param2:value2},

success:function(data)

{
……
}

});

2.3.3 Ext.net.DirectMethod.request方式

Ext.net.DirectMethod.request(

               {
                   method: 'post',
                   url: '@(Url.Action("ActionName"))',
                   form: FormID,
                   params: {
                       param1: value1
                   },
                   success: function (result) {
                      ...
                   },
                   error: function () {
                    ...
                   }
               }
               );

2.4  按钮点击的客户端事件和服务端事件问题     

2.4.1 如果客户端事件返回false,服务端事件依旧执行问题

Js方法一定要有返回的bool值,并且一定要在调用js方法前加retrun;

正确写法实例:

X.Button()
.Listeners(ls=>ls.Click.Handler=”retrun CheckFrom()”)
.DirectEvents(de=>
{
      ...
})

3 Controller

 

转载于:https://www.cnblogs.com/hetianerxing/p/4776367.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值