4

webmethodの単純な呼び出し:

[WebMethod]
        public List<string> GetSomethingBySomethingElse(string somethingElse) {
            var results = (from w in Something
                         where w.SomethingElse == somethingElse
                         orderby w.SomethingElse
                         select w.SomethingElse).Distinct();
            return results.ToList();
        }

他の誰か:http ://sitecoreblog.alexshyba.com/2009/03/attach-wcf-services-to-sitecore-context.html でも同じ問題が発生しましたが、どのように解決したかはわかりませんでした。

スタックトレース:

[ArgumentOutOfRangeException: Length cannot be less than zero.
Parameter name: length]
   System.String.InternalSubStringWithChecks(Int32 startIndex, Int32 length, Boolean fAlwaysCopy) +9385067
   Sitecore.Web.RequestUrl.get_ItemPath() +146
   Sitecore.Pipelines.HttpRequest.SiteResolver.GetItemPath(HttpRequestArgs args, SiteContext context) +32
   Sitecore.Pipelines.HttpRequest.SiteResolver.UpdatePaths(HttpRequestArgs args, SiteContext site) +69
   Sitecore.Pipelines.HttpRequest.SiteResolver.Process(HttpRequestArgs args) +49
   (Object , Object[] ) +64
   Sitecore.Pipelines.PipelineMethod.Invoke(Object[] parameters) +36
   Sitecore.Pipelines.CorePipeline.Run(PipelineArgs args) +140
   Sitecore.Pipelines.CorePipeline.Run(String pipelineName, PipelineArgs args, String pipelineDomain, Boolean failIfNotExists) +158
   Sitecore.Pipelines.CorePipeline.Run(String pipelineName, PipelineArgs args, String pipelineDomain) +64
   Sitecore.Pipelines.CorePipeline.Run(String pipelineName, PipelineArgs args) +50
   Sitecore.Nexus.Web.HttpModule.(Object sender, EventArgs e) +326
   System.Web.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +148
   System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +75
4

1 に答える 1

9

IgnoreUrlPrefixesWeb サービスへのパスを の設定に追加しますweb.config。無視する一意のパスはそれぞれパイプで区切られています。

于 2012-06-23T23:35:17.063 に答える