zoukankan      html  css  js  c++  java
  • .net mvc接收参数为null的解决方案

    1、通过对象接收请求数据时的null

    必须为对象的属性设置get与set

    private System.String _EMail = System.String.Empty;
            public System.String EMail
            {
                get {return _EMail;}
                set {_EMail = value;}
            }
    

      

    2、通过ajax传递的empty在对象中自动转换为null

    第一个解决方案

    [DisplayFormat(ConvertEmptyStringToNull = false)]
    public string test{get;set;}

    第二个解决方案

    using System;
    using System.Collections.Generic;
    using System.ComponentModel.DataAnnotations;
    using System.Linq;
    using System.Web;
    using System.Web.Mvc;
    
    namespace AiAn.GPS.Web.Models
    {
    //重写DataAnnotationsModelMetadataProvider方法中的CreateMetadata方法 public class MyDataAnnotationsModelMetadataProvider : DataAnnotationsModelMetadataProvider { protected override ModelMetadata CreateMetadata(IEnumerable<Attribute> attributes, Type containerType, Func<object> modelAccessor, Type modelType, string propertyName) { var md = base.CreateMetadata(attributes, containerType, modelAccessor, modelType, propertyName); DataTypeAttribute dataTypeAttribute = attributes.OfType<DataTypeAttribute>().FirstOrDefault(); DisplayFormatAttribute displayFormatAttribute = attributes.OfType<DisplayFormatAttribute>().FirstOrDefault(); if (displayFormatAttribute == null && dataTypeAttribute != null) { displayFormatAttribute = dataTypeAttribute.DisplayFormat; } if (displayFormatAttribute == null) { md.ConvertEmptyStringToNull = false; } return md; } } }

    //在Global.asax的Application_Start方法中,重新覆盖原有对象
    ModelMetadataProviders.Current = new AiAn.GPS.Web.Models.MyDataAnnotationsModelMetadataProvider();
    

      

  • 相关阅读:
    深入nginx之《获取用户的真实IP》
    深入Nginx之《常用参数配置技巧》
    深入Nginx之《HTTP请求报文与HTTP响应报文》
    webapck html-loader 静态html模块化
    webpack四个基础概念
    从原生Android 跳转到hbuilder项目
    移动端适配方案 flexible.js
    vue使用px2rem
    koa2 post请求ctx.request.body空获取不到的解决办法
    url、href、src
  • 原文地址:https://www.cnblogs.com/zhoushangwu/p/9641491.html
Copyright © 2011-2022 走看看