मैं http://www.asp.net/web-api/overview/security/working-with-ssl-in-web-api पढ़ सकते हैं और उस पृष्ठ से कोड का उपयोग करने की कोशिश की में काम नहीं कर:HttpResponseMessage वेब एपीआई (.NET 4.5)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web;
using System.Web.Http;
using System.Web.Http.Filters;
using System.Web.Http.Controllers;
public class RequireHttpsAttribute : AuthorizationFilterAttribute
{
public override void OnAuthorization(HttpActionContext actionContext)
{
if (actionContext.Request.RequestUri.Scheme != Uri.UriSchemeHttps)
{
actionContext.Response = new HttpResponseMessage(System.Net.HttpStatusCode.Forbidden)
{
ReasonPhrase = "HTTPS Required"
};
}
else
{
base.OnAuthorization(actionContext);
}
}
}
जब मैं निर्माण मैं एक त्रुटि नहीं मिलता है, लेकिन क्रम इस त्रुटि देता है :
CS0012: The type 'System.Net.Http.HttpRequestMessage' is defined in an assembly that is not referenced. You must add a reference to assembly 'System.Net.Http, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'.
मैं अपने प्रोजेक्ट के अपने संदर्भ फ़ोल्डर में System.Net.Http के लिए एक संदर्भ मिला है। यदि मैं इसकी गुणों को देखता हूं, तो यह संस्करण 4.0.0.0 और रनटाइम संस्करण 4.0.3031 9 कहता है। मेरे प्रोजेक्ट गुण कहते हैं कि लक्ष्य ढांचा .NET 4.5 है।
वीएस2013 एक्सप्रेस में मेरा इंटेलिसेन्स भी HttpResponseMessage या HttpRequestMessage के साथ कुछ भी नहीं करना चाहता।
मैंने संदर्भ को हटाने और इसे फिर से जोड़ने का प्रयास किया है, लेकिन इसका कोई फायदा नहीं हुआ है।
किसी भी मदद की सराहना की जाएगी।
'system.web' और' assemblies' के बीच 'संकलन' तत्व को न भूलें। –