我有以下 SQL 查询,我尝试将其转换为 LINQ,但没有成功:
select
at.financialaccountid,
SUM(creditamount)-SUM(debitamount)
from account_transactions at
where at.financialaccountid = 47
and ledgervisible = 1
GROUP BY at.financialaccountid
Run Code Online (Sandbox Code Playgroud)

希望有人可以指导我。
谢谢。
我需要将十进制值格式化为 8 个位置,其中最后 2 位数字保留用于十进制值。
格式应为:00000000(其中最后 2 个零表示十进制值)。
例子:
十进制值:193.45
结果应该是:0000019345
十进制值:245
结果应该是:0000024500
我知道我可以使用string.format("{format here}", value)或.ToString("format here")不知道使用什么字符串格式。
我有以下SQL查询.
SELECT em.employeeid, tsi.timestamp
FROM timesheet_temp_import tsi
JOIN employee emp ON emp.employeeid = tsi.credentialnumber
WHERE
tsi.masterentity = 'MASTER' AND
tsi.timestamp NOT IN
(
SELECT ea.timestamp
FROM employee_attendance ea
WHERE
ea.employeeid = em.employeeid
AND ea.timestamp = tsi.timestamp
AND ea.ismanual = 0
)
GROUP BY em.employeeid, tsi.timestamp
Run Code Online (Sandbox Code Playgroud)
此查询比较导入表(具有员工时间和出勤时间戳).
有时候timesheet_temp_import有超过95,000行,我的查询只显示员工的新时间戳.如果员工已经存在时间戳,那么我必须将其排除.
查询正在运行,但是花了4分多钟,所以我想知道我是否可以改进NOT IN其他语句,这可以帮助我减少这段时间.
我有一个方法将一个文件上传到服务器.现在除了方法上的任何不良编码之外还在工作(我是Task的新手).
以下是将文件上传到服务器的代码:
private async void UploadDocument()
{
var someTask = await Task.Run<bool>(() =>
{
// open input stream
using (System.IO.FileStream stream = new System.IO.FileStream(_cloudDocuments[0].FullName, System.IO.FileMode.Open, System.IO.FileAccess.Read))
{
using (StreamWithProgress uploadStreamWithProgress = new StreamWithProgress(stream))
{
uploadStreamWithProgress.ProgressChanged += uploadStreamWithProgress_ProgressChanged;
// start service client
SiiaSoft.Data.FieTransferWCF ws = new Data.FieTransferWCF();
// upload file
ws.UploadFile(_cloudDocuments[0].FileName, (long)_cloudDocuments[0].Size, uploadStreamWithProgress);
// close service client
ws.Close();
}
}
return true;
});
}
Run Code Online (Sandbox Code Playgroud)
然后我有一个ListBox,我可以拖放多个文件,所以我想做的是在ListBox文件中做一个FOR LOOP然后调用UploadDocument();但是我想首先在listBox中上传第一个文件然后在完成后继续第二个文件档案等......
关于最佳方法的任何线索?
非常感谢.
我有一个SEQUENCE用于设置表的事务对开的表:
CREATE SEQUENCE [Seq].[Folio]
AS [bigint]
START WITH 114090
INCREMENT BY 1
MINVALUE -9223372036854775808
MAXVALUE 9223372036854775807
CACHE
Run Code Online (Sandbox Code Playgroud)
今天只是为了好奇我做了一个:
SELECT folio
FROM transactions
ORDER BY folio DESC
Run Code Online (Sandbox Code Playgroud)
如果有差距会有什么意外,因此表中缺少对开页.
例:
这意味着事情正在发生.只是为了提供更多信息,INSERT我使用的存储过程之前有以下内容INSERT INTO...
DECLARE @numfolio int
SELECT @numfolio = NEXT VALUE FOR Seq.Folio
Run Code Online (Sandbox Code Playgroud)
从我的应用程序保存信息时,我使用了数据库事务,所以如果一切顺利,那么应用程序会执行COMMIT TRANSACTION,如果不是,我会执行此操作ROLLBACK TRANSACTION.
我认为问题的根源是事务,所以当出现错误NEXT VALUE时,序列已经生成,并且ROLLBACK对此没有影响.
有任何线索如何解决这个问题,以便有一个没有间隙的完美序列?
嗨,我有一个对象是Disposable,我想知道什么是更好的:
this.object.Dispose();
Run Code Online (Sandbox Code Playgroud)
要么
this.object = null;
Run Code Online (Sandbox Code Playgroud)
要么
this.object.Dispose();
this.object = null;
Run Code Online (Sandbox Code Playgroud) 我有一个方法,使用以下代码:
object frm = null;
// shows the overlay loading mask
Core.ShowLoadingMask("Please wait...");
// start task
Task.Factory.StartNew(() => {
// go to server and get the data
var employee = new Data.Entities.Employee(employeeId);
// instantiate the class type (reflection)
frm = Activator.CreateInstance(type, employee );
}).ContinueWith((task) => {
// hide loading mas
Core.HideLoadingMask();
if (frm != null) this.Panel.Controls.Add(frm);
});
Run Code Online (Sandbox Code Playgroud)
那么,我如何强制ContinueWith()强制使用当前线程的代码,或者我做错了.
我需要的过程是:
任何线索?
我在 Github 上有一个项目,所有团队都使用 Pull Request 工作流程。所以每个开发人员都有一个主存储库的分叉。
解决添加新功能问题的过程如下:
当我们要发布时,发布的代码来自 Master 存储库,但我们希望像 Master 中的代码的基线一样,这样任何其他接受并合并到 Master 中的 Pull 请求都不会更改我们的代码即将发布。
我们是否可以使用来自 Github 的发布功能在某个时刻获取 Master 存储库代码的副本,并保持该代码不变,即使某些新的 Pull 请求合并到 master 中也是如此?
我有第二个页面接收以下参数:
@page "/newrecord/{Employees}"
@inject HttpClient http
<h1>@Employees.Count</h1>
@code {
[Parameter]
public List<Model.Employees> Employees{ get; set; }
}
Run Code Online (Sandbox Code Playgroud)
在我的主页上,当单击如下按钮时,我会传递列表:
List<Model.Employees> selected { get; set; }
private void OnAddRecord()
{
NavigationManager.NavigateTo($"newrecord/{this.selected}");
}
Run Code Online (Sandbox Code Playgroud)
单击按钮时出现错误,我可以看到 URL 的格式如下:
如何将该对象传递到第二页?我是否必须使用 LocalStorage?或者使用其他类型的对象?
您好,我需要执行以下操作:
@Html.TextBoxFor(m => m.Login,
new {
@class = "form-control",
@placeholder = "Username",
required="true" data-required-message="Please insert your name"
})
Run Code Online (Sandbox Code Playgroud)
但是我遇到错误data-required-message似乎我不能使用“-”。
有什么线索吗?
c# ×5
sql ×3
async-await ×2
sql-server ×2
.net ×1
asp.net-mvc ×1
blazor ×1
dispose ×1
github ×1
linq ×1
notin ×1
performance ×1
pull-request ×1
razor ×1
t-sql ×1
winforms ×1