ins*_*um_ 28 c# asp.net-web-api
我是Web API使用的新手,我遇到问题的问题我无法找到解决方案.常见的问题是,当人们得到而不是application/x-www-form-urlencoded媒体类型样本时
无法为媒体类型'application/x-www-form-urlencoded'生成样本.不能使用格式化程序'FormUrlEncodedMediaTypeFormatterTracer'来写入'Task'类型.
常见的建议是在Config文件中指定自己的示例,但我想知道,我可以删除此媒体类型帮助部分吗?
config.SetSampleForType("", new MediaTypeHeaderValue("application/x-www-form-urlencoded"), typeof(object));
Run Code Online (Sandbox Code Playgroud)
给我一个空白的部分.
提前致谢!
Kir*_*lla 54
请问您为什么要删除此部分?就像你不想在你的服务中支持formurlencoded formatter?如果是,那么您可以从格式化程序集合中删除格式化程序本身,在这种情况下,此部分将不会显示.
config.Formatters.Clear();
config.Formatters.Add(new JsonMediaTypeFormatter());
config.Formatters.Add(new XmlMediaTypeFormatter());
Run Code Online (Sandbox Code Playgroud)或者,您可以在文件中执行以下更改(highlighed comments)Areas\HelpPage\SampleGeneration\HelpPageSampleGenerator.cs并执行以下操作,即过滤掉格式化程序:
// Do the sample generation based on formatters only if an action doesn't return an HttpResponseMessage.
// Here we cannot rely on formatters because we don't know what's in the HttpResponseMessage, it might not even use formatters.
if (type != null && !typeof(HttpResponseMessage).IsAssignableFrom(type))
{
object sampleObject = GetSampleObject(type);
// Change Begin --------------------------------------
IEnumerable<MediaTypeFormatter> filteredFormatters = formatters.Where(frmtr => frmtr.GetType() != typeof(JQueryMvcFormUrlEncodedFormatter));
foreach (var formatter in filteredFormatters)
{
// Change End --------------------------------------
Run Code Online (Sandbox Code Playgroud)| 归档时间: |
|
| 查看次数: |
10677 次 |
| 最近记录: |