Я пытаюсь вернуть код состояния 304, не модифицированный для метода GET, в контроллере веб-API.
Единственный способ, которым я преуспел, был чем-то вроде этого:
public class TryController : ApiController
{
public User GetUser(int userId, DateTime lastModifiedAtClient)
{
var user = new DataEntities().Users.First(p => p.Id == userId);
if (user.LastModified <= lastModifiedAtClient)
{
throw new HttpResponseException(HttpStatusCode.NotModified);
}
return user;
}
}
Проблема здесь в том, что это не исключение, просто оно не изменено, поэтому кеш клиента в порядке. Я также хочу, чтобы возвращаемый тип был User (как показывают все примеры веб-API с помощью GET), а не возвращал HttpResponseMessage или что-то вроде этого.
new HttpResponseMessage(HttpStatusCode.NotModified)
? Это не работает?
beta
или ночные сборки ?