1
我已經使用Web API創建了一個MVC5 Web應用程序。 我也用實體框架6.我試圖從實體框架返回XML數據
我有一個存儲過程:
SELECT * FROM [Group] WHERE CompanyRef = @CompanyRef OR CompanyRef = '00000000-0000-0000-0000-000000000000' AND Active = 1
FOR XML PATH('Group'), ROOT ('Groups')
它在查詢分析器返回此:
<Groups>
<Group>
<GroupId>1</GroupId>
<GroupRef>00000000-0000-0000-0000-000000000000</GroupRef>
<Name>Todays Work</Name>
<Description>System</Description>
<CompanyRef>00000000-0000-0000-0000-000000000000</CompanyRef>
<Active>1</Active>
</Group>
<Group>
<GroupId>2</GroupId>
<GroupRef>00000000-0000-0000-0000-000000000000</GroupRef>
<Name>All</Name>
<Description>System</Description>
<CompanyRef>00000000-0000-0000-0000-000000000000</CompanyRef>
<Active>1</Active>
</Group>
</Groups>
在函數導入聲明的返回類型(EF)是一個字符串。
在我的服務類我「連接」到實體模型通過調用這個:
public ObjectResult<string> Get(Guid? companyRef)
{
return o.Group_Get(companyRef);
}
在我的API控制器我打電話給我的服務功能是這樣的:
Compression compression = new Compression();
var test = groupRepository.Get(companyRef);
檢查的價值'測試' 我得到這個:
的重新是沒有我的XML的跡象?
如何實體自動識別字符串是XML。您必須將該字符串轉換爲xml對象。 – jdweng
@jdweng您好,感謝您的評論。是的,我知道但我期望結果視圖以字符串格式顯示我的XML? –
使用xml linq:XDocument doc = XDocument.Parse(string); – jdweng