ServiceStack webservice在ie9或ie10中使用localhost作为地址但不使用ip地址作为地址

时间:2013-05-17 19:09:49

标签: internet-explorer servicestack

我遇到了一个问题,Chrome和Opera在这方面工作得很好,但是当我在url中使用主机名或ip而不是localhost时,有一种形式可以放入Internet Explorer 9和10中。还有另一个表单对象适用于只有文本框和提交按钮的所有内容。

我遇到问题的表单包含文本字段,选择列表,下拉列表和复选框。

我没有从Internet Explorer的提交按钮收到该事件,但我在其他浏览器中收到。

错误:

Error Code:
RequestBindingException: Unable to bind request
Stack:
at ServiceStack.WebHost.Endpoints.RestHandler.GetRequest(IHttpRequest httpReq, IRestPath restPath) at ServiceStack.WebHost.Endpoints.RestHandler.ProcessRequest(IHttpRequest httpReq, IHttpResponse httpRes, String operationName)

代码:

<form style="width:inherit; margin:4px" action="/search" method="post"><label style="color: white;">Quick Search</label><br>
                <label style="color: white;">Colors:</label>
                <br/>
                @*<input style="width:100px;" name="Colors" type="text"><br>*@
                <select name="Colors" style="height:200px; width:100px;" multiple>
                    @{
                        @:<option value ="Any">Any</option>
                        foreach(Color colors in Repositories.TypeGetters.GetAllColors())
                        {
                            @:<option value ="@colors.Description">@colors.Description</option>
                        }
                    }
                </select><br>
                <input style="color: white; font-size:small" type="checkbox" name="PredominantColor" value="1" />
                <label style="color: white;">Predominant Color?</label><br />
                <label style="color: white; width:30px">D1</label><label style="color: white; width:30px">xD2:</label><br />
                <input style="width:30px" name="D1" type="text"><label style="color: white;">mm. X </label>
                <input style="width:30px" name="D2" type="text"><label style="color: white;">mm.</label><br />
                <label style="color: white;">Number of Layers:</label><br>
                <input style="width:30px" name="LayersCount" type="text"><br>
                <label style="color: white; width:100px">Flexibility:</label><br/>
                <select style="width:100px" name="Flexibility">
                    @{
                        @:<option value ="Any">Any</option>
                        foreach(FlexibilityType flex in Repositories.TypeGetters.GetAllFlexTypes())
                        {
                            @:<option value ="@flex.Description">@flex.Description</option>
                        }
                    }
                </select> <br />
                <button name="SearchType" type="submit" value="2" style="float:right; margin-right:20px;">Submit</button><br />
            </form>

1 个答案:

答案 0 :(得分:1)

随着时间的推移,我整天都花在这上面,我找到了解决方案。而不是使用

<button name="SearchType" type="submit" value="2" style="float:right; margin-right:20px;">Submit</button>

我用的标签

<input name="SearchType" type="submit" value="2" style="float:right; margin-right:20px;" /><br />

它解决了这个问题。

我无法理解或解释为什么互联网资源管理器没有相反的方式,但这是有效的。我猜这是因为IE的html5支持问题。