Создать DataContext из списка <T>, а не из строки подключения - PullRequest
0 голосов
/ 09 октября 2018

Есть ли способ создать System.Data.Linq.DataContext из List<T>

Из MSDN обязательно передать конструктор с любой строкой соединения для инициации объектов.

Мне просто интересно, есть ли способ сломать это и создать контекст из List<T>, расширяя DataContext или что-то еще?

Ожидая чего-то подобного, как это,

Class TestEntity
{
    public int EntityId { get; set; }
    public string EntityName { get; set; }
}

var list = new List<TestEntity>();

list.Add(new TestEntity { EntityId = 1, EntityName = "aaa" });
list.Add(new TestEntity { EntityId = 2, EntityName = "bbb" });

//Creating context on-demand with any available objects rather than external resources (database, file etc.)
var context = new DataContext(list); 

1 Ответ

0 голосов
/ 09 октября 2018

Вы можете сделать что-то подобное, но помните, что он принимает item.EntityName в качестве сервера.

 var list = new List<TestEntity>();

        list.Add(new TestEntity { EntityId = 1, EntityName = "aaa" });
        list.Add(new TestEntity { EntityId = 2, EntityName = "bbb" });

        //Creating context on-demand with any available objects rather than external resources (database, file etc.)
        foreach (var item in list)
        {
            var context = new DataContext(item.EntityName);
            context.CreateDatabase();
        }

Вывод

Server=aaa;Database=DataContext;Integrated Security=SSPI
Server=bbb;Database=DataContext;Integrated Security=SSPI
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...