大家好。我需要为表格创建一个数字。数字中有一部分只是一个自动递增的数字。问题。在 C# 中实现存储这样的数字的最佳方法是什么?在我看来,从 1 开始,每次从数据库中读取最后一个数字并进行增量是无意义的。有一个想法将其放入 appsetiongs.json 中。但我还没弄清楚如何编辑那里的值。还有哪些其他选择可以解决这个问题?
主页
/
user-394214
Vadim Tregubenko's questions
大家好。您需要从存档中的 JSON 文件中获取内容。如果我不解压缩档案,如何将这些文件的路径传输到流中?
现在我有这个错误:“找不到文件 'C:\Users\albuk\OneDrive\Desktop\nbl\webarm.backend\APRF.WebARM.API\07022023143523.json'。”
使用此代码:
using (var zipFile = new ZipArchive(command.File.OpenReadStream())) {
if (zipFile.Entries.Count == 0) {
throw new Exception("В архиве нет файлов");
}
foreach (ZipArchiveEntry f in zipFile.Entries) {
FileImportResult uploadRes = new FileImportResult
{
FileName = f.FullName
};
using (StreamReader sr = new StreamReader(f.FullName))
{
string text = await sr.ReadToEndAsync();
archive.HandlingReportFiles.Add(new HandlingReportFile
{
FileName = f.FullName,
Content = text
});
uploadRes.ContentJson = text;
};
大家好。有一个 Handler 将对象列表返回到前面。(Web API 项目)处理程序有 2 个调用它的控制器,一个用于搜索和排序,另一个仅用于排序。
尊敬的专家,请注意以下问题:如何搜索数组是否已通过 OrderBy 排序并相应地具有 IOrderedEnumerable 类型
返回类型最初是 List<> ,但必须更改为 IOrderedEnumerable<> 。
在这种情况下如何解决问题?
我有 4 个搜索条件。(前面有 4 个搜索字段,因为这是一个表格)
检查是否存在搜索请求。并从这里开始跳舞?那些。如果搜索失败,则只需默认(按日期)对列表进行排序并返回到前面。如果请求附带搜索字符串,则进行切换,在切换分支中,首先搜索列表,当它仍然是列表时,如果需要,然后在此分支中排序。
或者也许有一些 IOrderedEnumerable 的搜索方法?
目前的代码是:
readonly IReadonlyRepository<BlackListEntity> _readonlyRepository;
public GetBlackListQueryHandler(
IReadonlyRepository<BlackListEntity> readonlyRepository)
{
_readonlyRepository = readonlyRepository;
}
public async Task<IOrderedEnumerable<BlackList>> Handle(GetBlackListRequest request, CancellationToken cancellationToken)
{
IOrderedEnumerable<BlackList> x = null;
var result = await _readonlyRepository.GetAsync(cancellationToken);
var dataForSort = result.Value.Select(x => new BlackList
{
ItemId = x.Id,
...
}).ToList();
switch (request.SortBy)
{
case "LastName":
x = dataForSort.OrderBy(x => x.LastName);
break;
case "LastNameDecs":
x = dataForSort.OrderByDescending(x => x.LastName);
break;
case "FirstName":
x = dataForSort.OrderBy(x => x.FirstName);
break;
case "FirstNameDesc":
x = dataForSort.OrderByDescending(x => x.FirstName);
break;
case "MiddleName":
x = dataForSort.OrderBy(x => x.MiddleName);
break;
case "MiddleNameDesc":
x = dataForSort.OrderByDescending(x => x.MiddleName);
break;
case "PhoneNumber":
x = dataForSort.OrderBy(x => x.PhoneNumber);
break;
case "PhoneNumberDesc":
x = dataForSort.OrderByDescending(x => x.PhoneNumber);
break;
case "CreateDate":
x = dataForSort.OrderBy(x => x.CreateDate);
break;
case "CreateDateDesc":
x = dataForSort.OrderByDescending(x => x.CreateDate);
break;
}
return x;
仍然可以以某种方式简化过滤吗?否则带有开关和每个过滤脚本的设计似乎有点hacky
大家好。我以这种形式将 UTC 日期从 JS 发送到后端:Tue, 09 Aug 2022 07:03:41 GMT
如何在后端处理 DataTime 类型的这个日期?并返回时间,考虑到+3(莫斯科时间)
此刻,无论我如何通过日期,它都会返回给我:0001-01-01T00:00:00