我正在开发一个ASP.Net核心应用程序,并希望在字符串中对齐一些文本 不知怎的,我无法让这个工作,我可能会遗漏一些非常明显的东西。
所以这是我的代码(简化):
public class AdminController : Controller
{
[HttpPost]
[ValidateAntiForgeryToken]
public async Task<IActionResult> ImportOrganizations(ICollection<IFormFile> files)
{
var count = 0;
var uploads = Path.Combine(_environment.WebRootPath, "uploads");
foreach (var file in files)
{
if (file.Length <= 0) continue;
using (var reader = new StreamReader(file.OpenReadStream()))
{
var csv = new CsvReader(reader);
while (csv.Read())
{
// Fields that need to be filled
string name;
try
{
name = csv.GetField<string>("Name");
}
catch (Exception ex)
{
ModelState.AddModelError("", $"Row {csv.Row, 10}, {ex.Message}");
continue;
}
// Check if name has a value
if (string.IsNullOrWhiteSpace(name))
{
ModelState.AddModelError("", $"Row {csv.Row, 10}, Name is a required field");
continue;
}
if (await _context.Organizations.AnyAsync(o => o.Name == name))
{
ModelState.AddModelError("", $"Row {csv.Row, 3}, Organization {name} already exists");
continue;
}
// Add the new Event
var or = new Organization()
{
Name = name
};
_context.Organizations.Add(or);
}
await SaveContext();
}
}
var model = new ImportViewModel("Import Organizations", nameof(ImportOrganizations), count);
return View("Import", model);
}
}
现在当导入文件在名称字段中没有值时,我希望在浏览器中出现类似的内容:
Row 20 , Name is a required field
但我一直这样说:
Row 20, Name is a required field
有人可以帮助我吗?
答案 0 :(得分:0)
答案 1 :(得分:0)
感谢sgmoore的评论,我能够解决它。
这似乎是html的一个问题,它不可能连续使用多个空格。