Описание тега collection-initializer

[tag:collection-initializer] - это синтаксический сахар [tag: C#] для компактного объявления объектов коллекции с элементами.
2 ответа

Как определить, является ли инициализатор объекта тем, который вызывает метод Add?

У меня есть обычай Vector Класс, который можно инициализировать несколькими способами. Он имеет следующий конструктор для создания вектора заданной длины со всеми нулями. public Vector(int length) { ... } или он может использовать инициализатор объе…
3 ответа

Создание нового класса с инициализаторами коллекции в C#

У меня есть класс, который я создал. Я хотел бы позволить классу иметь инициализатор коллекции. Вот пример класса: public class Cat { private Dictionary catNameAndType = new Dictionary(); public Cat() { } public void Add(string catName, string catTy…
25 окт '11 в 20:39
1 ответ

В чем разница между этими двумя вариантами выражений инициализатора коллекции?

Некоторое время я использовал C#, но недавно заметил, что поведение одного из моих модульных тестов менялось в зависимости от того, какой вариант выражения инициализатора коллекции я использовал: var object = new Class { SomeCollection = new List&lt…
31 июл '17 в 07:32
2 ответа

Инициализация списка в классе для доступности из функций

Я хочу инициализировать список со значениями инициализатора коллекции в классе, чтобы сделать его доступным для использования из отдельных функций: public Form1() { InitializeComponent(); } List<string> list = new List<string>() {"one", …
0 ответов

Будет ли EF7 поддерживать инициализаторы коллекций?

C# 6 представил несколько интересных дополнений к тому, как инициализируются объекты и коллекции. Например, этот код действителен в C#6: void Main() { var ints = new[] { 1, 2, 3, 4, 5 }; var myClass = new MyClass { // IEnumerableExtensions.Add<T&…
1 ответ

Как реализовать чистый инициализатор пользовательских объектов для класса Matrix

У меня есть обычай Matrix класс, в котором я хотел бы реализовать собственный инициализатор объекта, аналогичный тому, который может использовать double[,], но не могу понять, как его реализовать. В идеале хотелось бы, чтобы это выглядело так var m1…
1 ответ

Использовать инициализатор коллекции с оператором вставки

У меня есть следующее method: public bool InsertUsername(string username) { string SQL = "Insert into [Users](Username, InsertDateTime) Values(@Username, datetime('now'));"; List<SQLiteParameter> pars = new List<SQLiteParameter>(); pars.…
29 апр '13 в 12:05
4 ответа

Новый инициализатор коллекции C#6 - уточнение?

Я прочитал это: Команда обычно занята внедрением других вариантов инициализаторов. Например, теперь вы можете инициализировать объект Dictionary Но, глядя на: var Dic = new Dictionary<string,int>{ {"x",3}, {"y",7} }; В.С. var Dic = new Diction…
21 янв '15 в 20:21
1 ответ

Асинхронное заполнение инициализатора коллекции

Я хотел бы заполнить коллекцию, используя инициализатор коллекции, который будет вызывать асинхронные методы: public class Diagnostics { public async Task<IEnumerable<DiagnosticsInfo>> Get() => new List<DiagnosticsInfo> { await …
2 ответа

System.Array не поддерживает Add(), так как же работает инициализатор коллекции?

В C# вы можете инициализировать массив следующим образом: var example = new int[] { 1, 4, 3 }; Как указано в пользовательских инициализаторах коллекции: Объект коллекции, к которому применяется инициализатор коллекции, должен относиться к типу, кото…
28 янв '16 в 09:35
1 ответ

Инициализатор коллекции C# foreach

Возможно ли в C# сделать что-то похожее на следующее? var tigerlist = new List<Tigers>(){ Tail = 10, Teeth = 20 }; var tigers_to_cats_approximation = new List<Cat>() { foreach (var tiger in tigerlist) { new Cat() { Tail = tiger.Tail / 2,…
31 июл '18 в 18:26
2 ответа

Относятся ли инициализаторы коллекций к LINQ в любом случае как инициализаторы объектов?

Я читаю о LINQ и вижу, как появляются Collection Initialzers, но действительно ли это напрямую связано с LINQ, как это делают Object Initializer? List<string> stringsNew = new List<string> { "string 1", "string 2" };
02 дек '11 в 02:35
2 ответа

C# Почему в словаре разрешено устанавливать свойства, хотя это внутреннее свойство

Я использую свободный API проверки для написания проверок. Я наткнулся на internal set собственность на ValidationContext учебный класс. public class ValidationContext { public Dictionary<string, object> RootContextData { get; internal set; } …
1 ответ

Использование TextBoxFor для установки атрибутов HTML, имеющих префикс пространства имен

Я конвертирую некоторый существующий HTML для работы с ASP.NET MVC, и у меня есть некоторые формы, содержащие поля ввода, которые имеют дополнительные атрибуты (которые на данный момент мне нужно сохранить), которые содержат префикс пространства име…
1 ответ

Функция / метод в инициализаторе коллекции C#

Я могу вставить метод / функцию в инициализатор коллекции? я пытаюсь вставить выражение в функцию в инициализаторе коллекции, но переменная в классе запрашивает объявление своего тела. Спасибо. List<demo> ags = new List<demo>() { new dem…
3 ответа

Инициализация объекта аналогична синтаксису List<>

Как я могу определить класс, чтобы он мог быть инициализирован так же, как List&lt;T&gt;: List&lt;int&gt; list = new List&lt;int&gt;(){ //this part }; Например, этот сценарий: Class aClass = new Class(){ new Student(), new Student()//... };
26 дек '11 в 10:49
1 ответ

Инициализировать коллекцию-член в классе

У меня есть класс, который имеет свойство коллекции: class MyClass { public MyCollection Coll { get; private set; } public MyClass() { this.Coll = new MyCollection(); } } class MyCollection : IList { ... } Сейчас я создаю два разных экземпляра моего…
05 авг '16 в 14:55
3 ответа

Объединение инициализатора списка и инициализатора объекта

Можно ли объединить инициализатор списка и инициализатор объекта одновременно? Учитывая следующее определение класса: class MyList : List&lt;int&gt; { public string Text { get; set; } } // we can do this var obj1 = new MyList() { Text="Hello" }; // …
2 ответа

C# Синтаксис инициализации коллекции для использования с пользовательским классом матрицы?

Я создаю пользовательский класс матрицы, который имеет только один 2D-массив для хранения всего (я знаю, что 1D-массив быстрее и лучше, но не в этом смысл этой реализации), дело в том, что я хотел бы иметь конструктор, и сможет сделать что-то вроде …
11 июл '18 в 18:10
2 ответа

Инициализатор анонимной коллекции для словаря

Можно ли неявно объявить следующее Dictionary&lt;HyperLink, Anonymous&gt;: { urlA, new { Text = "TextA", Url = "UrlA" } }, { urlB, new { Text = "TextB", Url = "UrlB" } } так что я мог бы использовать это так: foreach (var k in dic) { k.Key.Text = k.…