代码隐藏中的 RadTreeNode 数据集未出现在 WebService 回调中
我有一个 radtreeview,最初在我的页面代码中进行数据绑定,但任何节点扩展都依赖于对 SVC Web 服务的调用。 问题是,虽然事件正确触发并从我的 web 服务中运行以下方法:
[OperationContract]
[WebMethod]
public RadTreeNodeData[] TreeViewNodeExpand(RadTreeNodeData ExpandedNode,
object context) {
// blah blah some code
}
RadTreeNode ExpandedNone 参数为 null。 当我在后面的代码中构建初始树时,我将
List<RadTreeNode> collection
= (data.Select(x => new RadTreeNode
{
Category = category,
ExpandMode = WebService,
Value = x.Value.ToString(),
Text = x.Text,
DataItem = 555
})).ToList();
DataItem 显式设置为“555”。 我是否遗漏了为什么当 webservice 方法触发时 RadTreeNodeData ExpandedNode 为空?
我的 radtreeview 标记如下:
<telerik:RadTreeView ID="treeView" CheckBoxes="true" PersistLoadOnDemandNodes="true"
TriStateCheckBoxes="True" runat="server" CheckChildNodes="True" CausesValidation="false"
EnableEmbeddedSkins="false" Skin="VBoD">
<WebServiceSettings Path="~/WebServices/Retriever.svc" Method="TreeViewNodeExpand">
</WebServiceSettings>
</telerik:RadTreeView>
I have a radtreeview that I am initially data binding in the my page code but any node expansion relies on a call to a SVC web service.
The problem is that while the event fires properly and runs the following method out of my webservice:
[OperationContract]
[WebMethod]
public RadTreeNodeData[] TreeViewNodeExpand(RadTreeNodeData ExpandedNode,
object context) {
// blah blah some code
}
The RadTreeNode ExpandedNone parameter is null.
When I built the initial tree in my code behind, I set
List<RadTreeNode> collection
= (data.Select(x => new RadTreeNode
{
Category = category,
ExpandMode = WebService,
Value = x.Value.ToString(),
Text = x.Text,
DataItem = 555
})).ToList();
I explicitly set DataItem to '555'.
Am I missing something as to why RadTreeNodeData ExpandedNode is null when the webservice method fires?
My radtreeview markup is below:
<telerik:RadTreeView ID="treeView" CheckBoxes="true" PersistLoadOnDemandNodes="true"
TriStateCheckBoxes="True" runat="server" CheckChildNodes="True" CausesValidation="false"
EnableEmbeddedSkins="false" Skin="VBoD">
<WebServiceSettings Path="~/WebServices/Retriever.svc" Method="TreeViewNodeExpand">
</WebServiceSettings>
</telerik:RadTreeView>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我假设服务方法的签名是严格固定的:
RadTreeNodeData[] WebServiceMethodName(RadTreeNodeData node, object context)。
您应该将“ExpandedNode”重命名为“node”。
I assume signature of service method is stronly fixed:
RadTreeNodeData[] WebServiceMethodName(RadTreeNodeData node, object context).
You should rename 'ExpandedNode' to 'node'.