public class UserCollection : CollectionBase
{
public void Add(getUser item)
{
List.Add(item);
}
public void Remove(getUser item)
{
List.Remove(item);
}
public getUser this[int Index]
{
get { return (getUser)List[Index]; }
set { List[Index] = value; }
}
public UserCollection()
{
using(SqlDataReader reader = data.GetReader())
{
getUser user = new getUser();
user.Username = (string)reader["username"];
// osv
List.Add(user);
}
}
}
Jag har en class som ser ut ungefär så här:
public class getUser
{
private string username,email,sql;
public getUser()
{
//hämtar connection strängen
}
public void selectUser(string id)
{
//selectsats för att hämta en användare
sql="SELECT username, email FROM users WHERE userID="+id;
}
public string Username
{
get{return username;}
set
{
if(value.Length>0)
username = "username='" + value.Replace("'","''") +"',";
else
username = "";
}
}
public string Email
{
get{return email;}
set
{
if(value.Length>0)
email = "email='" + value.Replace("'","''") +"',";
else
email = "";
}
}
public void InsertUser()
{
sql="INSERT INTO users SET "+username+email;
sql = sql.Remove(sql.Length-1,1);
//lägger in i databasen
}
public void UpdateUser(string id)
{
sql="UPDATE users SET "+username+email;
sql = sql.Remove(sql.Length-1,1);
sql += " WHERE userID="+id;
//lägger in i databasen
}
}
Den funkar precis som den ska, MEN om jag nu vill lägga till en collection i den här som returnerar alla users och deras användarnamn och email hur gör jag då?
Tanken är att det ka kunna användas för att fylla olika objekt med DataBind(), någon add eller remove behövs inte utan endast hämtning...