DotNetNuke 4.xモジュールを作成していて、モジュールにAJAX CascadingDropDownが必要です。私はこのようなASCXの分離コードで定義されたページの方法でDotNetNukeモジュールのCascadingDropDown => [メソッドエラー500]
<asp:UpdatePanel runat="server" ID="CascadingDropDowns">
<ContentTemplate>
<asp:DropDownList runat="server" ID="SelectGroupDropDownList">
</asp:DropDownList>
<ajax:CascadingDropDown runat="server" ID="SelectGroupDropDownListExtender" Category="Group"
TargetControlID="SelectGroupDropDownList" PromptText="Select a Group" ServiceMethod="GetGroups">
</ajax:CascadingDropDown>
<!-- more dropdowns & cascadingdropdown extenders here -->
...私はページを実行すると
[WebService]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[ScriptService()]
public partial class EligibilityView : PortalModuleBase
{
[WebMethod]
[ScriptMethod]
public CascadingDropDownNameValue[] GetGroups(string knownCategoryValues, string category)
{
var results = new List<CascadingDropDownNameValue>();
// code here to fill the list with values...
return results.ToArray();
}
が、私は「[を取得...次のように定義されていますメソッドエラー500]」 - 私が間違っていることを何であるか把握することはできません。私は、問題はページがwebmethodを見つけることができないということだと思います。なぜなら、ASCXコントロールの内部で定義されているので、ページ自体ではないからです。 DotNetNuke用のモジュールにコンパイルされるので、ASMXサービスを作成しないで、このように定義したままにしておく必要があります。モジュール内で簡単に処理したいと思っています。
ご意見をいただければ幸いです。
デプロイメントを簡単にするために、私はascxでページメソッドを保持しようとしていました。私はかなり新しい核です - 私が見た最後のバージョンはおそらくバージョン1でした - そのため、asmxファイルを追加するとパッケージングと展開が難しくなるかどうかは分かりませんでした。 –
他のリソース(.ascx、.gif、.js、.docなど)とまったく同じであるasmxファイルのパッケージ化とデプロイメントを保証できます。 –