2011-04-21 76 views
0

我對由「svcutil.exe」生成的WCF服務代理客戶端有非常奇怪的問題。如果我沒有返回DataTable的函數,我的WCF服務工作得很好。只要我添加一個返回DataTable的方法,由svcutil.exe生成的客戶端表現得非常奇怪。接口不再被找到,客戶端無法調用該服務。但是,如果我作爲服務參考添加它的工作非常順利。我知道使用DataTable作爲返回類型不是一個好習慣,但我需要。我不能使用服務參考:-(任何想法爲什麼它的行爲或我想念的東西!!!svcutil不接受DataTable - WCF服務

回答

2

看看DataTableSurrogate類。它由SyncFramework用於序列化,真的很容易使用。 MSDN DataTableSurrogate

+0

感謝您的答覆LL嘗試,但我很好奇,想知道有沒有辦法作出SvcUtil工具一起工作數據表???? – Jankhana 2011-04-21 11:54:36

+0

@邁克爾:對不起,但這不是我要找的答案:-( – Jankhana 2011-04-23 09:31:57

1

你真的不應該序列化數據集,而不是你應該使用datamodels並保留任何與數據集,表,讀者等做你的業務層後端&。

但是...如果你想要這樣做,您需要在svcutil中添加以下「include」,這會導致您的問題。(告訴重用在System.Data.dll中定義的類型和在代理不生成)

/r:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Data.dll