【发布时间】:2014-11-24 14:36:30
【问题描述】:
我有一个外部 dll,其中定义了以下内容
namespace MoviesLibrary
{
public class MovieDataSource
{
public MovieDataSource();
public int Create(MovieData movie);
public List<MovieData> GetAllData();
public MovieData GetDataById(int id);
public void Update(MovieData movie);
}
}
我正在从存储库调用此 dll 以在我的 webapi 应用程序中执行 CRUD,现在在我的存储库中我正在编写 GetMovieById 方法,如果在存储库中找不到电影,我很困惑返回什么以及更合适的方法是什么在 webapi 中处理这个?
电影存储库
public Movie GetMovieById(int movieId)
{
MovieData movieData = new MovieDataSource().GetDataById(movieId);
if (movieData != null)
{
return MovieDataToMovieModel(movieData);
}
else
{
??
}
}
MoviesController
/// <summary>
/// Returns a movie
/// </summary>
/// <param name="movie">movieId</param>
/// <returns>Movie</returns>
public Movie Get(int movieId)
{
//try
//{
var movie = repository.GetMovieById(movieId);
if (movie == null)
{
throw new HttpResponseException(HttpStatusCode.NotFound);
}
return movie;
//}
//catch (Exception e)
//{
// if (e is HttpResponseException)
// throw new HttpResponseException(HttpStatusCode.NotFound);
//}
}
【问题讨论】:
标签: c# asp.net exception-handling asp.net-web-api