Как реализовать ienumerable в коде?
Привет! я хотел реализовать ienumerable в своем коде, чтобы он был доступен только для чтения, но я не знаю, где его можно реализовать. До сих пор я не нашел в интернете никакого решения, которое могло бы ответить на мою проблему. На данный момент я использовал только List и хотел интегрировать ienumerable в свой код. Кроме того, не стесняйтесь предлагать что-либо, если вы заметили плохие методы кодирования.
Что я уже пробовал:
public static List<GuitarItems> GetGuitarItems(string itemCategory) { List<GuitarItems> list = new List<GuitarItems>(); string query = string.Format("SELECT * FROM guitarItems WHERE brand LIKE @brand"); try { conn1.Open(); command1.CommandText = query; command1.Parameters.Add(new SqlParameter("brand", itemCategory)); SqlDataReader reader = command1.ExecuteReader(); while (reader.Read()) { int id = reader.GetInt32(0); string type = reader.GetString(1); string brand = reader.GetString(2); string model = reader.GetString(3); double price = reader.GetDouble(4); string itemimage1 = reader.GetString(5); string itemimage2 = reader.GetString(6); string description = reader.GetString(7); string necktype = reader.GetString(8); string body = reader.GetString(9); string fretboard = reader.GetString(10); string fret = reader.GetString(11); string bridge = reader.GetString(12); string neckpickup = reader.GetString(13); string bridgepickup = reader.GetString(14); string hardwarecolor = reader.GetString(15); GuitarItems gItems = new GuitarItems(id, type, brand, model, price, itemimage1, itemimage2, description, necktype, body, fretboard, fret, bridge, neckpickup, bridgepickup, hardwarecolor); list.Add(gItems); } } finally { conn1.Close(); command1.Parameters.Clear(); } return list; }
А вот другой код:
private void FillPage() { List<GuitarItems> itemList = new List<GuitarItems>(); List<string> itemListPage = new List<string>(); itemList = ConnectionClassGuitarItems.GetGuitarItems(brandType); StringBuilder sb = new StringBuilder(); foreach (GuitarItems gList in itemList) { itemListPage.Add("GuitarItemsIbanezDetails" + (x + 1) + ".aspx"); sb.Append( string.Format( @" <div class='one-two'> <a href='{3}' runat='server'><img runat='server' src='{0}'/></a> <div class='content'> <div id='label'>{1} {2}</div> </div> </div>", gList.ItemImage1, gList.Brand, gList.Model, itemListPage[x])); x++; } lblOutput.Text = sb.ToString(); }
[no name]
Поэтому используйте коллекцию только для чтения.
BebeSaiyan
@NotPoliticallyCorrect-да, правильно, очень полезно
Kornfeld Eliyahu Peter
Какова связь между IEnumerable и коллекцией только для чтения?