У меня есть несколько коллекций, которые выглядят одинаково, но работают с разными типами элементов коллекции, например:
[CollectionDataContract(ItemName = "Culture")]
public sealed class Cultures : List<LangCult>
{
}
Важным фрагментом кода здесь является атрибут CollectionDataContract
, который позволяет сериализоватьэта коллекция в XML-файл с DataContractSerializer
.Вся коллекция сериализуется в один XML-файл с именем типа класса коллекции, например Cultures.xml
. Я хотел бы создать репозиторий, а именно интерфейс для репозитория, которыйбудет работать на всех возможных коллекциях, например public class Slugs : List<string>
.
Я пробовал что-то подобное, но я не знаю, является ли это лучшим вариантом:
public interface ICollectionsRepository<T> where T : IEnumerable
Ваши мысли?
Пожалуйста, не отвечайте с инструкциями о том, как сериализовать, потому что это не проблема здесь, и у меня это работает.