У меня есть требование реализовать какой-то словарь. Что-то вроде MyDict<K,V1, V2)
. Например, если у меня есть вопрос как ключ (k), то правильным ответом является V1. V2 - это выбранный пользователем ответ. Есть ли коллекция, которая удовлетворяет этому требованию в C#. Если мне нужно разработать свой собственный тип, какие интерфейсы я должен реализовать. ICollection
и Ilist
?C# Generic Collection help
ответ
Если вы используете .NET 4, существует несколько общих классов Tuple
, которые вы можете использовать.
Таким образом, вы можете использовать:
Dictionary<T,Tuple<V1,V2>>
В более ранних версиях можно был использовать KeyValuePair<T1,T2>
в качестве второго универсального типа:
Dictionary<T,KeyValuePair<V1,V2>>
интересный. В будущем может быть много правильных ответов. Поэтому я должен просто создать тип без каких-либо дженериков. класс mytype { string Вопрос; IList
Классы коллекции определены как часть пространства имен System.Collections
или System.Collections.Generic
.
что-то вдоль линий:
Dictionary<Question,Answer> qDict = new Dictionary<Question, Answer>();
Answer attempt_v2 = new Answer();
Question question = new Question();
if (qDict.ContainsKey(question))
{
Answer actual_answerv1 = qDict[question];
if (actual_answerv1 == attempt_v2)
{
// Answers match
}
}
[Примечание: Я просто постучался, что до. Это может быть не лучшее решение проблемы совпадения вопросов и ответов ...]
Спасибо за помощь. Должно быть что-то вроде этого. – dcmovva
Я думаю, что нужна новая реализация.
ИЛИ если в вашем ответе есть свойство Выбранное, вы можете создать.
Dictionary<Question, IList<Answer>>
или и может иметь тип с
class Answers {
Ilist Answers;
Answer Selected;
}
благодарит за ответ – dcmovva
- 1. Вопрос о C# Generic Collection
- 2. Generic Collection
- 3. Сериализация класс, производный от Generic Collection еще десериализации Generic Collection
- 4. Scala non-generic collection
- 5. Jackson serialize generic collection
- 6. Make collection route generic
- 7. Orika Generic Collection Пользовательское сопоставление
- 8. Databinding Generic Collection против DataTable,
- 9. Help Linqifying collection to Dictionary
- 10. Iterate generic collection top down (TDictionary)
- 11. Custom Collection vs Generic Collection для общедоступных методов
- 12. custom generic collection - лучший способ его рефакторинга?
- 13. Custom Generic Collection Trim class в java
- 14. это [имя строки] в Generic Collection
- 15. Ограничение множественного типа в экземпляре Generic Collection
- 16. MVC4 Generic Collection модель вопрос о POST
- 17. Компактификация Swift Generic Collection, где ограничение
- 18. C# Generic Linq запросов
- 19. C# Generic содержит Generic
- 20. C# (Generic of Generic)?
- 21. Help Fluent NHibernate Mapping Generic Class
- 22. Help with linq2sql generic lambda expression
- 23. Help with Generic LINQ OrderBy Lambda Expression
- 24. Java Collection <Generic Type> Сортировка без коллекций
- 25. Visual C++ logic help help
- 26. C# help help (TExtractor callid)
- 27. Что такое C++ (generic (c/C++) vs (generic c)/C++)
- 28. C/C++ Registry Help
- 29. C# Generic binding
- 30. ReSharper показывает возможное нулевое присвоение значения Value for generic Collection
какой версии .NET Framework? –
Рамка. .net 3.5 – dcmovva