Предполагая, что вы поместите значения в одну строку:
ViewState("test") = "bob, tom, jack"
If Not ViewState("test").ToString().Contains("tom") Then
ViewState("test") = ViewState("test").ToString() And ", tom"
End If
Вышеприведенное сработает, если вы используете одну строку для хранения имен.Возможно, вы захотите рассмотреть объект коллекции, такой как List.
Тогда вы можете иметь:
Dim names As New List(Of String)() From { _
"tom", _
"jack", _
"harry" _
}
ViewState("test") = names
Dim viewstateNames As List(Of String) = TryCast(ViewState("test"), List(Of String))
If viewstateNames IsNot Nothing AndAlso Not viewstateNames.Contains("tom") Then
viewstateNames.Add("tom")
End If
На заметку, я ненавижу VB.NET.Вы должны рассмотреть C #.Намного проще следовать:
List<string> names = new List<string> { "tom", "jack", "harry" };
ViewState["test"] = names;
List<string> viewstateNames = ViewState["test"] as List<string>;
if (viewstateNames != null && !viewstateNames.Contains("tom"))
{
viewstateNames.Add("tom");
}