【问题标题】:What is Microsoft's GWT solution for .NET? [closed]Microsoft 的 .NET 的 GWT 解决方案是什么? [关闭]
【发布时间】:2011-08-07 14:31:58
【问题描述】:

我喜欢 GWT,但我更喜欢在我的项目中使用 ASP.NET MVC,然而,这两者没有集成,需要我用两种不同的平台和两种语言编写我的代码。微软有没有可以与 GWT 相媲美的将 C# 编译成 JavaScript 的解决方案?我知道有 Script# 不受 MS 支持,而 Volta 项目在预览后被杀死,但我想知道现在是否有任何好的解决方案可用,或者至少有一些好的开源项目可以将 ASP.NET 与总重量。谢谢。

【问题讨论】:

  • 你能澄清一下这个问题吗?您是在寻求一种将 ASP.NET 与 GWT 混合的简单方法,还是在寻求一种类似于 GWT、与 Microsoft 兼容但实际上并不使用 GWT 的综合解决方案?
  • 我在问.NET 开发人员对在 ASP.NET 中引入 GWT 或类似 GWT 的功能有何建议?换句话说,为开发客户端代码(Java 或 C#)并同时在服务器端使用 ASP.NET MVC 进行编译时间检查的建议方法是什么?
  • 我认为 Microsoft 喜欢 TypeScript (typescriptlang.org) - 它为您提供编译时类型安全,并且仍然非常接近 javascript。
  • @OndrejSvejdar TypeScript 今天是正确的答案,我已经使用它几年了。如果有人发帖,我会标记为答案。

标签: c# javascript asp.net-mvc gwt script#


【解决方案1】:

好吧,我可以告诉你这些天我最喜欢的堆栈是什么样的。对我来说,这是既定技术与灵活性之间的良好平衡,但请记住,我主要使用它来构建单页 ajax“应用程序”,而不是用于传统的页面集合。

  • Sharp UI(完全披露:这是我的开源项目之一)
  • Script#
  • jQuery
  • 我使用我内部编写的工具来生成 WCF 和 Script# 共享的“数据包”类。
  • WCF(JSON 格式)
  • ASP.NET(Webforms 或 MVC)

我从 Script# 获得编译时类型检查,从 Sharp UI 获得 UI 控件封装,通过 WCF 和我的代码生成工具非常容易维护 JSON 服务端点,以及用于杂项或传统网页的 ASP.NET。我用这个设置在所有 8 个汽缸上点火。

【讨论】:

  • 您能多谈谈您如何编排 jquery-UI 的东西,还是不使用它?
  • Script# 链接已失效
  • @TiagoMatias thx 已修复。
【解决方案2】:

Bridge.NET 在这个空间里。它将自己描述为:

开源 C# 到 JavaScript 编译器和框架。 使用 JavaScript 在任何设备上运行您的应用程序。

Microsoft 驱动的解决方案是TypeScript,它是一种独立的语言,由 C# 的首席架构师 Anders Hejlsberg 提供。它也是开源的。

【讨论】:

    【解决方案3】:

    用于 C# .NET 的 SharpKit 与 GWT 类似,但实际上做得更多。他们甚至有一个完全用 Javascript 编写的 CLR,在客户端提供反射、泛型等。

    http://sharpkit.net

    【讨论】:

    • 谢谢,SharpKit 似乎有一段时间没有活动了,但看起来他们又开始营业了。但是,至于微软支持的可以与 GWT 相媲美的解决方案,我选择了TypeScript,尽管它不完全是 C# 到 JavaScript。
    【解决方案4】:

    好建议,但作为 AFAIK,.Net 世界中绝对没有像 GWT 这样的东西。

    我是一名 Java 和 .Net 程序员。大约 3 年以来,我很少与 javascript 作斗争,但从未适应过它。自从采用 GWT 以来,我正在制作基于 Javascript 的网页,但使用 Java 编码 - 我非常喜欢它;-)

    没有很好的理由为什么不能有 GWT 的 .Net 等价物。 GWT 不会对 Java 进行“文字复制”来生成 Javascript——因此它不依赖于具有“相似”语法的两种语言。可以转换任何语言。请注意,复制 GWT 编译器在生成它的 js 文件时执行的分析和优化需要付出很多努力。

    更有效的方法可能是找到一个 C# 到 Java 的转换器,然后将输出传递给 GWT。

    【讨论】:

    • 我给你更好的:C# => Ruby => Fortran => Chuck Norris => VB => ASP => PHP => J2E => Java => GWT ... FTW! 我可以在哪里提供帮助? ;)
    • @Robert Koritnik:这是有史以来最好的答案!罗夫特!
    • 也许可以尝试 C# => IKVM => GWT
    猜你喜欢
    • 1970-01-01
    • 2014-04-13
    • 1970-01-01
    • 2011-10-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-02
    • 1970-01-01
    相关资源
    最近更新 更多