Ich habe diese Seite der Operatoren, die zwei Tabellen mit Daten aus der Datenbank, eine Tabelle mit vorhandenen Operatoren und eine Tabelle mit vorhandenen Benutzern hat. Wenn ein Benutzer bereits ein Operator ist, möchte ich, dass diese Zeile in der Tabelle ausgeblendet wird. Hier ist mein Code:datarow Filterarray mit Datensatz C# asp net
C#:
var userDetailsList = new List<ContactPartial>();
TellusAPI.TellusUserDetails userDetails;
var operators = _administrationSystem.GetOperatorsInformation(userId); //DataSet
var getUser = webSearch.DoSearchForNameAndNumber(userId, txtSearchForOperator.Text, false, "", "", false, false, out userDetails); //Array
if (getUser == null)
{
userDetailsList.Add(new ContactPartial(userDetails));
rptAdd.DataSource = null;
}
else
{
userDetailsList = getUser.Select(x => new ContactPartial(x)).ToList();
var dv = new DataView(operators.Tables[0]);
foreach (var Operator in userDetailsList)
{
if (!userDetailsList.Contains(Operator)) continue;
dv.RowFilter = "ID = " + Operator.Id;
}
rptAdd.DataSource = userDetailsList; //Repeater
}
Klasse:
/// <summary>
/// Class for converting.
/// </summary>
public class ContactPartial
{
public long Id { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public string CompanyName { get; set; }
public string Email { get; set; }
public ContactPartial(TellusUserDetails tud)
{
if (tud == null)
{
return;
}
Id = tud.UserID;
FirstName = tud.FirstName;
LastName = tud.LastName;
CompanyName = tud.Organisation.Description;
Email = tud.Email;
}
public ContactPartial(TellusSearchUserInfo tsi)
{
if (tsi == null)
{
return;
}
Id = tsi.ID;
FirstName = tsi.FirstName;
LastName = tsi.LastName;
CompanyName = tsi.CompanyName;
Email = tsi.Email;
}
}
So, jetzt vergleiche ich diese beiden und filtern Sie die Zeilen mit ID, aber es liest immer noch alle Zeilen.
Können Sie einige Beispieldaten und erwartetes Ergebnis und einige Erklärungen in Ihrem Code angeben, welche Zeile was macht und was nicht erwartet? –
Das erwartete Ergebnis ist, dass bei der Suche nach Benutzern in der Datenbank diejenigen herausgefiltert werden sollen, die bereits in der Operators-Tabelle enthalten sind. Ich habe die ID, die das wissen sollte. – Malphai
@ChetanRanpariya Kommentar bitte lesen. – Malphai