Der Skin, den ich geschrieben habe, verwendet nur den Text ohne den Wert, um gut auszusehen. Verwenden Sie nun diese Methode, um die unbequeme Methode zu lösen, nur den Wert aus dem Text zu entnehmen Natürlich können Sie auch nur diese beiden Listen zurückgeben
Code
/// <Zusammenfassung>
/// Den Index basierend auf dem Spaltennamen abrufen
/// </summary>
/// <param name="fiId">Spaltenname</param>
/// <returns>Spaltenindex</returns>
privater String GetFunctionNameByName(string Name)
{
var result = this.objWSM.GetFunctionInfo().AsEnumerable().Where(f1 => f1["fiName"].ToString().Trim() == Name.ToString().Trim()).FirstOrDefault() ;
return result["fiId"].ToString();
}
GetFunctionInfo ist eine Methode, die alle Informationen in der Tabelle abfragt
/// <Zusammenfassung>
/// Holen Sie sich den Spaltennamen basierend auf dem Spaltenindex
/// </summary>
/// <param name="fiId">Spaltenindex</param>
/// <returns>Spaltenname</returns>
privater String GetFunctionNameById(int fiId)
{
var result = this._fiTable.AsEnumerable().Where(fi => Convert.ToInt32(fi["fiId"]) == fiId).FirstOrDefault();
return result["fiName"].ToString();
}
Die beiden Methoden sind meiner Meinung nach viel bequemer. Sie können die Abfrage direkt an der Rezeption durchführen, indem Sie alle Methoden gleichzeitig abfragen.
Lassen Sie mich diesen Schritt erklären.
this.objWSM.GetFunctionInfo().AsEnumerable().Where(f1 => f1["fiName"].ToString().Trim() == Name.ToString().Trim()).FirstOrDefault();
this.objWSM.GetFunctionInfo() ist eine Methode zum Abfragen aller
AsEnumerable().Where() gibt eine generische Zeile zurück, die mit LinQ-Ausdrücken abgefragt werden kann
f1 => f1["fiName"].ToString().Trim() == Name.ToString().Trim())Linq-Ausdruck
F1 ist der Name einer neu generierten Zeile
f1["fiName"]. Natürlich ist es der Spaltenname in dieser Zeile, => gefolgt von der Bedingung und davor der Satz
f1["fiName"].ToString().Trim() == Name.ToString().Trim() bedeutet, dass zwei gleiche Werte in dieser Zeile entfernt werden
FirstOrDefault(); bedeutet, dass die erste Zeile übernommen wird
An diesem Punkt ist das Problem fast gelöst. Solange es eine Methode zum Abfragen dieser beiden Spalten gibt, schreiben Sie diese beiden Methoden in die Rezeption, und es ist nicht erforderlich, jedes Mal zwei spezielle Methoden zu schreiben Zugriff auf die Datenbank, was sehr praktisch ist.