Я вытаскиваю свои волосы на этом. Я пытаюсь реализовать службу данных ADO.Net, которая использует контекст данных Linq to SQL. Я думал, что у меня это работает, но URL для одной из моих таблиц всегда получает исключение.
Очевидная разница между таблицей, которая не работает, и таблицей, которая заключается в том, что получающая исключение использует Guid, который является первичным ключом. Guid - это UserID, который на самом деле относится к UserId, используемому членством ASP.net. (Я не выставляю таблицы членства в ASP.net, но, полагаю, они тоже сломались бы.)
Это очень простая таблица:
Имя: UserDetails :: | Guid UserID | int GroupID (внешний ключ) | Имя строки |
Кто-нибудь знает, есть ли хитрость, чтобы заставить Гидов работать? Или, может быть, это совсем другая проблема?
Вот исключение из сервиса:
Произошла ошибка при обработке этого запроса.
InnerError: Произошла ошибка при обработке этого запроса.
Тип: System.InvalidOperationException
StackTrace:
t System.Data.Services.Serializers.SyndicationSerializer.WriteComplexObjectValue (элемент Object, String propertyName, ResourceType ОжидаемыйType, StringlativeUri, DictionaryContent content) & # xD;
в System.Data.Services.Serializers.SyndicationSerializer.WriteObjectProperties (расширенный IExpandedResult, объект customObject, ResourceType resourceType, Uri absoluteUri, StringlativeUri, элемент SyndicationItem, содержимое DictionaryContent) & # xD;
в System.Data.Services.Serializers.SyndicationSerializer.WriteComplexObjectValue (элемент Object, String propertyName, ResourceType ОжидаемыйType, StringlativeUri, DictionaryContent content) & # xD;
в System.Data.Services.Serializers.SyndicationSerializer.WriteObjectProperties (расширенный IExpandedResult, объект customObject, ResourceType resourceType, Uri absoluteUri, StringlativeUri, элемент SyndicationItem, содержимое DictionaryContent) & # xD;
в System.Data.Services.Serializers.SyndicationSerializer.WriteComplexObjectValue (элемент Object, String propertyName, ResourceType ОжидаемыйType, StringlativeUri, DictionaryContent content) & # xD;
в System.Data.Services.Serializers.SyndicationSerializer.WriteObjectProperties (расширенный IExpandedResult, объект customObject, ResourceType resourceType, Uri absoluteUri, StringlativeUri, элемент SyndicationItem, содержимое DictionaryContent) & # xD;
в System.Data.Services.Serializers.SyndicationSerializer.WriteEntryElement (IExpandedResult расширен, элемент Object, тип Ожидаемый тип, Uri absoluteUri, строка StringlativeUri, цель SyndicationItem) & # xD;
в System.Data.Services.Serializers.SyndicationSerializer. d__0.MoveNext () & # xD;
в System.ServiceModel.Syndication.Atom10FeedFormatter.WriteItems (средство записи XmlWriter, элементы IEnumerable`1, Uri feedBaseUri) & # xD;
в System.ServiceModel.Syndication.Atom10FeedFormatter.WriteFeedTo (средство записи XmlWriter, канал SyndicationFeed, логический isSourceFeed) & # xD;
в System.ServiceModel.Syndication.Atom10FeedFormatter.WriteFeed (модуль записи XmlWriter) & # xD;
в System.ServiceModel.Syndication.Atom10FeedFormatter.WriteTo (модуль записи XmlWriter) & # xD;
в System.Data.Services.Serializers.SyndicationSerializer.WriteTopLevelElements (расширен IExpandedResult, элементы IEnumerator, логический hasMoved) & # xD;
в System.Data.Services.Serializers.Serializer.WriteRequest (IEnumerator queryResults, Boolean hasMoved) & # xD;
в System.Data.Services.ResponseBodyWriter.Write (Потоковый поток)