我用許多不同的方法創建了一個類庫(DLL)。並返回不同類型的數據(string string [] double double [])。因此,我創建了一個類我叫CustomDataType包含不同的數據類型,因此在庫中每個方法可以返回自定義類的對象的所有方法,並通過這種方式能夠回到我已經做了這樣的多種數據類型:返回不同的數據類型C#
public class CustomDataType
{
public double Value;
public string Timestamp;
public string Description;
public string Unit;
// special for GetparamterInfo
public string OpcItemUrl;
public string Source;
public double Gain;
public double Offset;
public string ParameterName;
public int ParameterID;
public double[] arrayOfValue;
public string[] arrayOfTimestamp;
//
public string[] arrayOfParameterName;
public string[] arrayOfUnit;
public string[] arrayOfDescription;
public int[] arrayOfParameterID;
public string[] arrayOfItemUrl;
public string[] arrayOfSource;
public string[] arrayOfModBusRegister;
public string[] arrayOfGain;
public string[] arrayOfOffset;
}
庫中包含這樣的方法:
public CustomDataType GetDeviceParameters(string deviceName)
{
......................
code
getDeviceParametersObj.arrayOfParameterName;
return getDeviceParametersObj;
}
public CustomDataType GetMaxMin(string parameterName, string period, string maxMin)
{
.....................................code
getMaxMingObj.Value = (double)reader["MaxMinValue"];
getMaxMingObj.Timestamp = reader["MeasurementDateTime"].ToString();
getMaxMingObj.Unit = reader["Unit"].ToString();
getMaxMingObj.Description = reader["Description"].ToString();
return getMaxMingObj;
}
public CustomDataType GetSelectedMaxMinData(string[] parameterName, string period, string mode)
{................................code
selectedMaxMinObj.arrayOfValue = MaxMinvalueList.ToArray();
selectedMaxMinObj.arrayOfTimestamp = MaxMintimeStampList.ToArray();
selectedMaxMinObj.arrayOfDescription = MaxMindescriptionList.ToArray();
selectedMaxMinObj.arrayOfUnit = MaxMinunitList.ToArray();
return selectedMaxMinObj;
}
如圖所示THI不同的方法返回不同的數據類型,以及它爲我工作正常,但當我輸入DLL和要使用方法五isual studio將所有的數據類型都放在CustomDataType類中,作爲對所有方法的建議,即使返回的是不同的數據。這在下面的圖片中是不清楚的。正如我們從圖片中可以看到所有不同返回數據的建議,用戶可能會感到困惑,併爲某些方法選擇錯誤的返回數據。所以我的問題是如何改善這一點。所以Visual Studio建議每個方法的歸屬返回數據類型。
考慮使用泛型類型。 – pylover