c# - 如何删除点网核心输入模型中的多余空格?
问题描述
我找到了一个链接来删除模型属性中多余的空格,它是字符串类型如何在 ASP.NET MVC Web API 中修剪模型的空格
如何在 dot net core 2.1 web api 中实现相同的功能?
或者 dotnet 核心中是否有任何内置格式化程序可用于删除输入和输出模型中的额外空格?
提前致谢?
解决方案
我相信您链接的答案可能是您最好的选择。因此,根据 anwser 创建一个转换器。
class TrimmingConverter : JsonConverter
{
public override bool CanConvert(Type objectType)
{
return objectType == typeof(string);
}
public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
{
if (reader.TokenType == JsonToken.String)
if (reader.Value != null)
return (reader.Value as string).Trim();
return reader.Value;
}
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
{
var text = (string)value;
if (text == null)
writer.WriteNull();
else
writer.WriteValue(text.Trim());
}
}
然后在你的类的ConfigureServices
方法中注册它,如下所示:Startup
public void ConfigureServices(IServiceCollection services)
{
services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1)
.AddJsonOptions(a => a.SerializerSettings.Converters.Add(new TrimmingConverter()));
}
推荐阅读
- python - 使用正则表达式从字符串中提取子字符串
- angular - 如何使用 NgDatePicker Angular 在 startDate 中处理 Duedate
- vb.net - 循环启动时串行通信停止工作
- python - RuntimeError:任务的产量不好:
- c++ - 如何解决多线程绘制不流畅的问题?
- sql - 进行多次插入时如何获取插入的 NewSequentialId 值?
- windows - 未找到 C++/CX UWP Windows 桌面 API
- oauth - OAuth 2.0 客户端 ID
- javascript - 使用按钮 onclick 强制触发事件侦听器
- node.js - ERROR { MongoError: Unknown modifier: $pushAll 使用 mongoose 更新时