mirror of
https://github.com/XCharts-Team/XCharts.git
synced 2026-05-19 15:00:08 +00:00
3.0
This commit is contained in:
75
Runtime/Internal/Attributes/SerieDataExtraFieldAttribute.cs
Normal file
75
Runtime/Internal/Attributes/SerieDataExtraFieldAttribute.cs
Normal file
@@ -0,0 +1,75 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace XCharts.Runtime
|
||||
{
|
||||
[AttributeUsage(AttributeTargets.Class, AllowMultiple = true)]
|
||||
public sealed class SerieDataExtraFieldAttribute : Attribute
|
||||
{
|
||||
public readonly List<string> fields = new List<string>();
|
||||
|
||||
public SerieDataExtraFieldAttribute()
|
||||
{ }
|
||||
public SerieDataExtraFieldAttribute(string field1)
|
||||
{
|
||||
AddFiled(field1);
|
||||
}
|
||||
public SerieDataExtraFieldAttribute(string field1, string field2)
|
||||
{
|
||||
AddFiled(field1);
|
||||
AddFiled(field2);
|
||||
}
|
||||
public SerieDataExtraFieldAttribute(string field1, string field2, string field3)
|
||||
{
|
||||
AddFiled(field1);
|
||||
AddFiled(field2);
|
||||
AddFiled(field3);
|
||||
}
|
||||
public SerieDataExtraFieldAttribute(string field1, string field2, string field3, string field4)
|
||||
{
|
||||
AddFiled(field1);
|
||||
AddFiled(field2);
|
||||
AddFiled(field3);
|
||||
AddFiled(field4);
|
||||
}
|
||||
public SerieDataExtraFieldAttribute(string field1, string field2, string field3, string field4, string field5)
|
||||
{
|
||||
AddFiled(field1);
|
||||
AddFiled(field2);
|
||||
AddFiled(field3);
|
||||
AddFiled(field4);
|
||||
AddFiled(field5);
|
||||
}
|
||||
public SerieDataExtraFieldAttribute(string field1, string field2, string field3, string field4, string field5, string field6)
|
||||
{
|
||||
AddFiled(field1);
|
||||
AddFiled(field2);
|
||||
AddFiled(field3);
|
||||
AddFiled(field4);
|
||||
AddFiled(field5);
|
||||
AddFiled(field6);
|
||||
}
|
||||
public SerieDataExtraFieldAttribute(string field1, string field2, string field3, string field4, string field5, string field6, string field7)
|
||||
{
|
||||
AddFiled(field1);
|
||||
AddFiled(field2);
|
||||
AddFiled(field3);
|
||||
AddFiled(field4);
|
||||
AddFiled(field5);
|
||||
AddFiled(field6);
|
||||
AddFiled(field7);
|
||||
}
|
||||
|
||||
private void AddFiled(string field)
|
||||
{
|
||||
if (!SerieData.extraFieldList.Contains(field))
|
||||
throw new ArgumentException("SerieData not support field:" + field);
|
||||
fields.Add(field);
|
||||
}
|
||||
|
||||
public bool Contains(string field)
|
||||
{
|
||||
return fields.Contains(field);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user