本文整理汇总了C#中Lib.GetFilters方法的典型用法代码示例。如果您正苦于以下问题:C# Lib.GetFilters方法的具体用法?C# Lib.GetFilters怎么用?C# Lib.GetFilters使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Lib
的用法示例。
在下文中一共展示了Lib.GetFilters方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: RunOutput
public static ReportOutputReturn RunOutput( Lib.Data.Report report, Lib.Data.ReportOutput output, Dictionary<string, object> data )
{
var ret = new ReportOutputReturn {
OutputType = output.Type.ToString(),
OutputParameters = output.Parameters,
Data = new List<Dictionary<string,object>>()
};
var ps = new List<Framework.Data.Parameter>();
foreach( var k in data.Keys )
{
if( data[k] != null )
ps.Add( new Framework.Data.Parameter( k, data[k] ) );
}
var filters = report.GetFilters();
foreach( var filter in filters )
{
if( !data.ContainsKey( filter.ParameterName ) )
{
Type t = null;
switch( filter.Type )
{
case Data.ReportFilter.FilterTypes.DateTime:
t = typeof( DateTime );
break;
case Data.ReportFilter.FilterTypes.Integer:
t = typeof( int );
break;
case Data.ReportFilter.FilterTypes.String:
t = typeof( string );
break;
}
ps.Add( new Framework.Data.Parameter( filter.ParameterName, null, t ) );
}
}
var rows = output.Run( ps );
foreach( var row in rows )
{
var dr = new Dictionary<string, object>();
for( int i=0; i < row.FieldCount; i++ )
{
string name = row.GetName( i );
object value = row.GetValue( i );
if( value == DBNull.Value )
value = null;
dr[name] = value;
}
ret.Data.Add( dr );
}
return ret;
}