2012-04-10 167 views
0

我正在開發一個項目,該項目應該將雅虎天氣API與ASP.Net MVC連接起來3 在創建變量後,它給了我一個名爲「類型或名稱空間名稱」的錯誤WeatherForecast '找不到(您是否缺少使用指令或程序集引用?)C:\ Users \ kumi.SH \ Documents \ Learn \ ASP.Net_MVC3 \ WeatherApp \ WeatherApp \ Controllers \ HomeController.cs「名稱空間找不到

I在我的HomeController.cs文件中有以下代碼:

public ActionResult GetWeather(string Id) 
{ 
    StringBuilder sb = new StringBuilder(); 
    WeatherForecast wf = new WeatherForecast(); 
    WeatherForecasts wfs = wf.GetWeatherByPlaceName(Id); 
    WeatherData[] wd = wfs.Details; 
    sb.AppendFormat("<B>Weather Forecast for {0}</B><br /><br />", wfs.PlaceName); 
    foreach (WeatherData d in wd) 
    { 

     if (!string.IsNullOrEmpty(d.WeatherImage)) 
     { 
      sb.AppendFormat("<img src=\"{0}\" >", d.WeatherImage); 
      sb.AppendFormat(" {0}", d.Day); 
      sb.AppendFormat(", High {0}F", d.MaxTemperatureF); 
      sb.AppendFormat(", Low {0}F<br />", d.MinTemperatureF); 
     } 
    } 
    Response.Write(sb.ToString()); 
    return null; 
} 

您可以指定需要使用的名稱空間嗎?

Thankx in advance ......

+0

也許你可以在這裏找到更多的信息,HTTP: //developer.yahoo.com/dotnet/#howto – 2012-04-10 13:18:32

+0

有沒有從一個elses示例代碼?你錯過了一個使用語句來告訴代碼「WeatherForecast」在哪裏,或者你的missnig是它的類文件/程序集。 – 2012-04-10 13:18:57

+0

看起來這個代碼是從這個codeproject文章:http://www.codeproject.com/Articles/41828/JQuery-AJAX-with-ASP-NET-MVC – Robbie 2012-04-10 15:06:28

回答

0

它看起來像您的應用程序使用以下Web服務?

http://www.webservicex.net/weatherforecast.asmx

如果是這樣,你需要的是你要使用它在同一個項目中的服務引用添加到該服務。即您的示例中代碼所在的同一個項目。從您的示例中的路徑來看,該項目稱爲「WeatherApp」。

您可以通過右鍵單擊解決方案資源管理器中的項目節點並選擇「添加服務引用」來執行此操作。隨後出現的服務網址(上圖)粘貼到地址欄,然後按下對話框中的「開始」 - 給它一個名稱,然後點擊「確定」

Add Service Reference Image

+0

你的想法很有用,但它沒有爲錯誤做任何事情。謝謝,如果您有任何想法,請在添加webservice引用後發送給我 – Leo 2012-04-10 14:30:38

+0

@Kumu,確保在類聲明的上方有一個using語句指向web服務。例如,如果服務引用的名稱空間是「WeatherService」,則需要這樣的使用語句:'using WeatherService;'或者,您可以完全限定方法調用,就像這樣'new WeatherService.WeatherForecast();' – Robbie 2012-04-10 14:36:47

+0

甚至無法添加像上面提到的 – Leo 2012-04-11 08:39:29

相關問題