我正在通过一个在线教程(构建Web应用程序)来学习ASP.NET。问题是,当我重复使用导师代码时,我坚持这个错误:
Error 1 The type or namespace name 'Uri' could not be found (are you missing a using directive or an assembly reference?)
我尝试包含多个命名空间(如System.Uri),但没有一个工作。有人知道问题在哪里,我需要做些什么来解决问题?
这是代码:
using System.Collections.Generic;
using System.Net;
using System.Linq;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Data.Entity;
using System.Web;
using System.Web.Http;
using System.Net.Http;
using System.Data.Entity.Infrastructure;
using System.Uri;
public HttpResponseMessage Post(Friend friend)
{
if (ModelState.IsValid)
{
db.Friends.Add(friend);
db.SaveChanges();
HttpResponseMessage response = Request.CreateResponse(HttpStatusCode.Created, friend);
response.Headers.Location = new Uri(Url.Link("DefaultApi", new { id = friend.FriendId }));
return response;
}
else
{
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
}
}
答案 0 :(得分:6)
你不能拥有using System.Uri;
,因为Uri
是一个类(在Visual Studio 2015之前不允许进行静态导入,我认为你现在还没有使用它,即使是VS 2015,它会失败,因为Uri
不是静态类
包括:
using System;
并删除
using System.Uri;
答案 1 :(得分:0)
来自microsoft doc http://msdn.microsoft.com/en-us/library/system.uri%28v=vs.110%29.aspx
include的引用是System.dll默认情况下应该存在。检查您是否错误地删除了它。