vb.net – 如何避免?

前端之家收集整理的这篇文章主要介绍了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);
}

猜你在找的VB相关文章