我有这样的结构:
struct Test
{
string name;
string family;
public Test...
}
Run Code Online (Sandbox Code Playgroud)
在我的代码中,我有一个这个结构的列表:
List<Test> testList=new List<Test>();
Run Code Online (Sandbox Code Playgroud)
我有这样的linq表达式:
var list =testList.Select(n=>n.Name);
Run Code Online (Sandbox Code Playgroud)
但是如何通过testList的Family过滤此选择?这样的事情:
var list=testList.Select(n=>n.Name).Where(f=>f.Family=="");
Run Code Online (Sandbox Code Playgroud)
这个Where子句只适用于所选的名称,这些名称是字符串列表
任何想法如何做到这一点?
这很奇怪,但我的SQL Server不会删除项目:
我有一个这样的存储过程:
Create Procedure DeleteItem @cnm nchar(10)
as
Begin Transaction
Delete From T1 where Cnm = @cnm
Delete From T2 where Cnm = @cnm
if @@ERROR <> 0
Begin
Commit
End
Else
Begin
RollBack
End
Run Code Online (Sandbox Code Playgroud)
当我在SQL Server Management Studio中运行此查询时:
Exec DeleteItem '1111111111'
Run Code Online (Sandbox Code Playgroud)
它在Messages窗格中返回:
(1 row(s) affected)
(1 row(s) affected)
Run Code Online (Sandbox Code Playgroud)
但是当我从那些表中获取数据时,删除的记录仍然存在!
我做错了吗?
我有一个带有一些控件的UserControl和一个文本框,我想在输入键点击该文本框时执行一些程序,我在UserControl中有这个代码:
public event EventHandler TextBoxKeyPressed
{
add { textBox.KeyPressed+=value; }
remove { textBox.KeyPressed-=value; }
}
Run Code Online (Sandbox Code Playgroud)
在我的主要表单中,我有很多这个控件,每一个我应该检查按下的键,如果是Enter键,那么执行程序.
有没有办法创建一个自定义事件来检查UserControl中按下的键,如果是Enter键然后触发该事件?
更新:每个自定义控件可能在KeyPresssd事件上有不同的过程