vb.net – 如何避免?

我使用VB.NET“WCF Rest Service Application”项目模板构建了一个非常简单的Web服务(这是一个不错的选择吗?).我工作得很好,除了有事实
<string xmlns="http://schemas.microsoft.com/2003/10/Serialization/">
...
</string>

添加到我的答案.

我已将我的返回值声明为String:

<WebInvoke(UriTemplate:="member/login",Method:="POST",responseformat:=Webmessageformat.Json,BodyStyle:=WebMessageBodyStyle.Bare)>
Public Function Create(data As IO.Stream) As String

        Dim strData As String = New IO.StreamReader(data).ReadToEnd()
        Dim UserAccessForm As LoginAccess = Me.getAnswer(strData)
        Dim jsonAnswer As String
        jsonAnswer = Newtonsoft.Json.JsonConvert.SerializeObject(UserAccessForm,Newtonsoft.Json.Formatting.None)
        Return jsonAnswer
End Function

所以不要回答这个问题:

{"logged":false,"userID":"0","message":"Empty body"}

我明白了:

<string xmlns="http://schemas.microsoft.com/2003/10/Serialization/">
{"logged":false,"message":"Empty body"}
</string>

有什么方法可以避免我的字符串答案的这种不必要的序列化?

我刚遇到这个问题并通过将XmlSerializerFormat属性应用于服务契约来解决它.

这是一个c#片段 – 希望它对你有所帮助.

[ServiceContract(Namespace = "")]
[XmlSerializerFormat]
interface IHuggies
{
    [OperationContract]
    [WebInvoke(
        Method = "POST",UriTemplate = "/CheckIfConsumerExists")]
    bool CheckIfConsumerExists(string parameters);
}

相关文章

Format[$] ( expr [ , fmt ] ) format 返回变体型 format$ 强...
VB6或者ASP 格式化时间为 MM/dd/yyyy 格式,竟然没有好的办...
在项目中添加如下代码:新建窗口来显示异常信息。 Namespace...
转了这一篇文章,原来一直想用C#做k3的插件开发,vb没有C#用...
Sub 分列() ‘以空格为分隔符,连续空格只算1个。对所选...
  窗体代码 1 Private Sub Text1_OLEDragDrop(Data As Dat...