BN089-BS开发框架MVC4版/source20131023/Zephyr.Net/Zephyr.Core/Request/RequestWrapperConvert.cs
(开头部分) 6KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
/*************************************************************************
* 文件名称 :RequestWrapperConvert.cs
* 描述说明 :请求包装 参数转换处理
*
* 创建信息 : create by liuhuisheng.xm@gmail.com on 2012-11-10
* 修订信息 : modify by (person) on (date) for (reason)
*
* 版权信息 : Copyright (c) 2013 厦门纵云信息科技有限公司 www.zoewin.com
**************************************************************************/
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text.RegularExpressions;
using System.Xml.Linq;
namespace Zephyr.Core
{
public partial class RequestWrapper
{
#region 私有方法
private void parseColumns(XElement settings, Action<string,object> Column) {
var columns = settings.Element("columns");//todo 拓展功能
var ignoreCols = columns != null ? getXmlElementAttr(columns, "ignore").Split(',') : new string[0];
var includeCols = columns != null ? getXmlElementAttr(columns, "include").Split(',') : new string[0];
ignores.AddRange(ignoreCols);
foreach (var key in this.Except(ignores))
{
if (includeCols.Length == 0 || includeCols.Contains(key))
Column(key, this[key]);
}
}
private void parseWhere(XElement settings, Action<string, string, Func<WhereData, string>, string, object[]> AndWhere)
{
var where = settings.Element("where");
if (where == null) return;
var defaultForAll = string.Equals(getXmlElementAttr(where, "defaultForAll"), "true", StringComparison.OrdinalIgnoreCase);
var defaultCp = CpHelper.Parse(getXmlElementAttr(where, "defaultCp"));
var defaultIgnoreEmpty = string.Equals(getXmlElementAttr(where, "defaultIgnoreEmpty"), "true", StringComparison.OrdinalIgnoreCase);
var handledList = new List<string>();
foreach (var item in where.Elements("field"))
{
var name = getXmlElementAttr(item, "name");
var cp = CpHelper.Parse(getXmlElementAttr(item, "cp"), defaultCp);
var ignoreEmpty = getXmlElementAttr(item, "ignoreEmpty") == string.Empty ? defaultIgnoreEmpty : string.Equals(getXmlElementAttr(item, "ignoreEmpty"), "true", StringComparison.OrdinalIgnoreCase);
var variable = getXmlElementAttr(item, "variable",name);
var value = this[variable];
var extend = getXmlElementAttr(item, "extend").Split(',');
if (!string.IsNullOrEmpty(value) || !ignoreEmpty)
AndWhere(getFieldName(name, true), value, cp, variable, extend);
handledList.Add(getFieldName(variable));
handledList.Add(getAliasName(variable));
}
后面还有 98 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。