单声道在OS X上缺少HttpUtility

本文关键字:HttpUtility OS 声道 单声道 | 更新日期: 2023-09-27 18:17:41

>问题

我在OS X Lion上新安装了mono,编译并运行了我的第一个csharp "hello world",然后尝试了一个Web请求......

但是我错过了HttpUtility。

gmcs GoogleExample.cs -r:System.Web.Services -r:System.Web 
GoogleExample.cs(14,32): error CS0103: The name `HttpUtility' does not exist in the current context
Compilation failed: 1 error(s), 0 warnings

怎么办?

历史

我编写C,NodeJS,Python,Ruby等代码,编程不是菜鸟,只是单声道。

我刚刚通过以下说明在OS X上安装了mono(MRE Runtime,MDK和MonoDevelop(:http://www.go-mono.com/mono-downloads/download.html

然后我按照这些说明去玩hello world:http://www.mono-project.com/Mono_Basics

现在我想按照本教程创建一个 Web 请求:http://www.codeproject.com/KB/cross-platform/introtomono1.aspx?msg=3229009

最终目标:当然,我想创建一个基于 JSON 的聊天服务器作为我的第一个 csharp 项目。

单声道在OS X上缺少HttpUtility

我刚刚在 Monodevelopment 2.6 中启动了一个新的 ASP.Net 解决方案

在示例页面的代码隐藏 ( button1Clicked ( 中键入 Http,会立即自动完成到 HttpUtility 等。

这当然不是缺失的。您需要参考

System.Web

虽然

显然谷歌也找不到它,所以他们在那里写了自己的API兼容版本:

解决方法如下:

  1. 谷歌的版本编译为库

    wget 'http://google-gdata.googlecode.com/svn/trunk/clients/cs/src/core/HttpUtility.cs'
    gmcs -t:library HttpUtility.cs
    
  2. 编辑GoogleExample.cs以包含该命名空间

    using Google.GData.Client; // where HttpUtility lives
    
  3. 使用库重新编译

    gmcs GoogleExample.cs -r:System.Web.Services -r:System.Web -r:HttpUtility
    

旁注:示例中的正则表达式(或 URL GoogleExample.cs已过时,因此它永远不会返回结果,但至少它可以编译和运行。