使用promises从DB收集所有数据的正确或最佳方法是什么,但使用本机Node承诺.
目标只是呈现所选内容:
const allPromises = [];
const selected = {
sectionA: true,
sectionB: false,
sectionCIds: [ 1, 2, 4 ],
};
if (selected.sectionA) {
allPromises.push(getSectionADataFromDbPromise());
}
if (selected.sectionB) {
allPromises.push(getSectionBDataFromDbPromise());
}
if (selected.sectionCIds.length > 0) {
allPromises.push(selected.sectionCIds
.map(getSectionCDataFromDbPromise)
);
}
Promise.all(allPromises)
.then((allResults) => {
if (selected.sectionA) {
dataA = allResults[0];
}
if (selected.sectionA) {
dataB = allResults[1];
}
if (selected.sectionC) {
dataC = allResults[2]; // <-- this will not work if B is not selected
}
// ... …Run Code Online (Sandbox Code Playgroud) 将ObsevableCollection User数据源作为详细信息放置在新表单上,它会创建所有文本框、BindingSource 和 BindingNavigator。这是优秀和快速的。
因为我只需要更新一个用户,所以我删除了 BindingNavigator。但...
这可以不转换列表吗?
class UserDt : Forms {
// Designer partial part
this.userBindingSource.DataSource = typeof(WinFormswithEFSample.User);
private void UserDt_Load
{
_context.Users.Load();
// use this with BindNavigator to navigate ower all users
//this.userBindingSource.DataSource = _context.Users.Local.ToBindingList();
// this doesn't work
//this.userBindingSource.DataSource = _context.Users.Where(p => p.Username == "admin").Local.ToBindingList();
var query = _context.Users.Where(p => p.Username == "admin").ToList();
var binding = new BindingList<User>(query);
this.usersBindingSource.DataSource = binding;
}
}
Run Code Online (Sandbox Code Playgroud) 我试图通过DOS找到一种方法来查看ftp站点上是否存在文件.我get在文件上尝试了一个命令,希望如果它不存在,它就不会将它下载到我的本地目录.然而,它仍然接缝,但它是一个空文件.这对我不起作用,因为我正在寻找的文件只是一个空的触发器文件,所以我无法区分.
我想将lsftp目录的列表转储到本地驱动器上的文本文件中,所以我试试
ls > listing.txt.它在listing.txt本地创建文件,但即使ftp站点上有文件,它也总是为空.
我对此有何选择?
我已经使用了dir > listing.txt,ls > listing.txt并且每次listing.txt都是空的,即使目录中有文件我正在运行这些命令.
对不起,如果我没有说清楚,但我正在尝试获取自动化流程的列表,而不是仅仅为我的视觉手动执行此操作.