Указанный актер неверен, запрашивая Sharepoint

Используя SPMETAL, я создал файл C#, позволяющий мне использовать LINQ для доступа к объектам Sharepoint.

Однако использование очень простого запроса приводит к странной ошибке:

Указанный состав недействителен.

Трассировки стека:
в Set__zleceniaTrigger(объект, объект) в Microsoft.SharePoint.Linq.StaticPropertyMap.SetToEntity(объектный объект, значение объекта) в Microsoft.SharePoint.Linq.SPItemMappingInfo.MaterializeEntity[TEntity](элемент данных DataContext dc, SPDataListInmap, SPDataListInfo, элемент SPDataListInfo, список SPDataListInIn, SPLataListInfo, список SPDataListInIn, SPLataListInfo, список объектов SPDataListIn, SPLataList, JoinPath joinPath) в lambda_method(ExecutionScope, SPListItem) в System.Linq.Enumerable.WhereSelectEnumerableIterator2.MoveNext() at System.Collections.Generic.List1..ctor (IEnumerable1 collection) at System.Linq.Enumerable.ToList[TSource](IEnumerable1 источник) в QuickModify.Program.Main(String[] args) в C:\XXXXXXXXX\QuickModify\Program.cs: строка 42 в System.AppDomain._nExecuteAssembly(сборка сборки, аргументы String []) в Microsoft.VisualStudio.HostingProcess..HostProc.RunUsersAssembly() в System.Threading.ExecutionContext.Run(ExecutionContext executeContext, обратный вызов ContextCallback, состояние объекта) в System.Threading.ThreadHelper.ThreadStart()

Сам запрос выглядит так:

SPEntitiesDataContext ctx = new SPEntitiesDataContext("http://localhost:1080");  
var tasks = ctx.Zlecenia.ToList();

Конечно, это не самый оптимальный запрос, но тот, который использует. Где фильтровать только необходимые записи, также возвращает ту же ошибку.

Я обнаружил, что могу выбрать определенные столбцы, используя .Select(z => new ZlecenieItem(){ ColumnName = z.ColumnName, ... })Однако я не могу использовать это для выбора столбцов поиска, так как я получаю следующую ошибку (даже если я выберу только один столбец таким образом):

В запросе используются неподдерживаемые элементы, такие как ссылки на несколько списков или проекция полной сущности с использованием EntityRef/EntitySet.

Это проблематично, потому что иногда мне нужно получать значения из других списков, и было бы неплохо использовать значения поиска.

Я только что нашел свою первую настоящую ошибку в продукте MS, или (что кажется более вероятным) я делаю что-то не так?

1 ответ

Решение

Хотя я до сих пор не уверен, почему вышеперечисленное не сработало, мне удалось решить эту проблему, добавив в SPmetal файл пользовательской конфигурации для создания ссылки.

Это предполагает, что конфигурация SPmetal по умолчанию может не всегда работать.

Другие вопросы по тегам