ASP.Net AJAX 不创建 Javascript 类型

发布于 2024-07-17 08:40:04 字数 367 浏览 3 评论 0原文

我正在使用 ASP.Net AJAX,并在我的应用程序中创建了一个 Web 服务。 该服务有一个方法 (AddWatchedFolder),它采用 Name.Space.WatchedFolder 作为唯一参数。 问题是,即使我已将服务添加到 ScriptManager,ASP.Net AJAX 也不会为 Name.Space.WatchedFolder 生成 javascript 类型。

我能够将参数类型更改为字符串并且它工作得很好,但我无法使用该业务对象作为参数,因为我无法从 javascript 创建它。

如果有什么区别的话,类 (Name.Space.WatchedFolder) 存在于单独的类库项目中。

有什么想法如何让它发挥作用吗?

I'm using ASP.Net AJAX and I created a web service in my application. The service has one method (AddWatchedFolder) and it takes a Name.Space.WatchedFolder as the only parameter. The problem is, ASP.Net AJAX isn't generating a javascript type for Name.Space.WatchedFolder even though I've added the service to a ScriptManager.

I am able to change the parameter type to a string and it works just fine, but I can't use that business object as a parameter because I can't create it from javascript.

The class (Name.Space.WatchedFolder) exists in a separate class library project if that makes any difference.

Any ideas how to get this to work?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

郁金香雨 2024-07-24 08:40:04

这就是 ASP.NET Ajax 的工作原理。 您可以尝试将对象作为匿名 javascript 对象传递。 JavaScript 序列化器很可能会设法从提供的 JSON 中解析您的自定义对象。 这是一些代码:

ASMX:

[WebMethod]
public void MyMethod(MyObject arg)
{
   return arg.Property1 + arg.Property2;
}

JavaScript:

var arg = { Property1 : "One", Property2 : "Two" };
MyNameSpace.MyService.MyMethod(arg);

This is how ASP.NET Ajax works. You can try passing your object as anonymous javascript object. The JavaScript serializer will most probably manage to parse your custom object out of the supplied JSON. Here is some code:

ASMX:

[WebMethod]
public void MyMethod(MyObject arg)
{
   return arg.Property1 + arg.Property2;
}

JavaScript:

var arg = { Property1 : "One", Property2 : "Two" };
MyNameSpace.MyService.MyMethod(arg);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文