我有这样的SQL查询:
UPDATE StockUpdateQueue SET Synced = 1, SyncedAt = GETDATE() WHERE Id IN (@p0,@p1);
Run Code Online (Sandbox Code Playgroud)
此查询是动态生成的.我想要做的是通过一个函数运行它,它将有效地用@pN相应的值替换所有参数.
我试图用标准做到这一点,string.Replace也Regex.Replace没有运气 - 替换没有发生.
这是我到目前为止所尝试的:
class Program
{
static string _lastQuery;
static void Main(string[] args)
{
var sqlQuery = "UPDATE StockUpdateQueue SET Synced = 1, SyncedAt = GETDATE() WHERE Id IN (@p0,@p1);";
var sqlParamters = new Dictionary<string, object>()
{
{ "@p0", 12345 },
{ "@p1", 65432 }
};
LogLastQuery(sqlQuery, sqlParamters);
}
static void LogLastQuery(string sqlQuery, Dictionary<string, object> sqlParamters = null) …Run Code Online (Sandbox Code Playgroud) 我在winforms应用程序中使用visual c#.我想查看是否*.plr存在,删除所有带扩展名的文件.plr.我很困惑,因为以下代码由于某种原因不起作用.
if (File.Exists("*.plr"))
{
File.Delete("*.plr");
}
Run Code Online (Sandbox Code Playgroud) 我正在创建一个C#电话簿应用程序,它从用户(名字,姓氏和电话号码)获取输入,将其存储在文本文件中,并可以在Windows窗体上显示.目前,当我启动程序时,我在此方法中得到一个StackOverflowException:
public string Phone
{
get { return Phone; }
set
{ // VS says that StackOverflowException happens here
if (value.Length == 10)
{
Phone = value;
}
else
{
Phone = "0000000000";
}
}
}
Run Code Online (Sandbox Code Playgroud)
我相信当我尝试从文本文件中读取电话号码时会发生异常.以下代码来自Read方法:
foreach (var line in lines)
{
string[] entries = line.Split('`');
Contact newContact = new Contact();
newContact.FirstName = entries[0];
newContact.LastName = entries[1];
newContact.Phone = entries[2]; //I think exception happens here
contactList.Add(newContact);
Run Code Online (Sandbox Code Playgroud)
但是,当我在该行放置一个断点并进入调试模式时,当我将鼠标悬停Phone在该行中时Phone = value;,VS在大约6秒后退出调试模式.这是我悬停Phone和VS退出调试模式后的输出:
ContactsList.vshost.exe'(Managed(v4.0.30319)):已加载'C:\ WINDOWS\Microsoft.Net\assembly\GAC_MSIL\System.Configuration\v4.0_4.0.0.0__b03f5f7f11d50a3a\System.Configuration.dll',跳过加载符号.模块已经过优化,调试器选项"Just My Code"已启用.程序'[5200] …
我的代码似乎正确.但是当我Group在查询中添加关键字时,它会生成一条消息:
关键字"组"附近的语法不正确
但当我删除Group关键字时,程序运行成功.
private void CSRMaintReviewer_Load(object sender, EventArgs e)
{
this.MaintReviewertbl.DataSource = null;
SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["csrapps"].ConnectionString);
conn.Open();
SqlCommand cmd = new SqlCommand();
cmd.Connection = conn;
cmd.CommandType = CommandType.Text;
cmd.CommandText = "select " +
"EmailID_Reviewer, " +
"Reviewer_Name, " +
"Reviewer_Email, " +
"EmailID_TeamLead, " +
"TeamLead_Name, " +
"TeamLead_Email, " +
"Site, " +
"Business_Unit, " +
"Group, " +
"Station, " +
"Pkg_Department, " +
"Region, " +
"Account, " +
"Key_Field, " …Run Code Online (Sandbox Code Playgroud) 我想返回一个排序列表,但它给了我这个错误.我该怎么办?
public class sortA : sortMethod
{
public override List<int> Sort(List<int> A)
{
//List<int> Asorted = new List<int>();
//Asorted = A.Sort(){ };
return A.Sort();
}
}
Run Code Online (Sandbox Code Playgroud) 嗨,我想在 WPF 中最大化窗口,我使用以下几行:
private void mnu_maximize_Click(object sender, RoutedEventArgs e)
{
if (main.WindowState == System.Windows.WindowState.Maximized)
main.WindowState = System.Windows.WindowState.Normal;
main.WindowState = System.Windows.WindowState.Maximized;
}
Run Code Online (Sandbox Code Playgroud)
但问题是当我再次单击以将恢复窗口恢复到正常状态时,它无法正常工作并且处于最大化状态。
那么我该如何解决这个问题?
我想OR在我的linq查询中使用函数.例如:Sql:
select * from tblusers where userid=1 and status='a' or status='b';
Run Code Online (Sandbox Code Playgroud)
LINQ:
var result= _Repository.selectAll().where(x=>x.UserID==1 && x.status=="a" OR x.status=="B");
Run Code Online (Sandbox Code Playgroud)
它确实适用于linq查询.那么有谁有任何想法?
如何foreach从IEnumerable<Model>.
代码:
public IEnumerable<Model> ListDaftarPjsp()
{
IEnumerable<Model> list = from x in db.PJSPEvaluation
select new Model
{
foo = x.Foo,
bar = x.Bar
};
foreach (Model item in list) {
item.condition = "example";
}
return list;
}
public class Model{
public string foo{ get; set; }
public string bar { get; set; }
public string condition{ get; set; }
}
Run Code Online (Sandbox Code Playgroud)
我已经创建了Model. 然后我使用foreach循环结果,然后设置它。但是 Return forcondition仍然没有改变?如何在foreach中设置条件然后返回结果
我有一个这样的字符串:string ip = "192.168.10.30 | SomeName".我想把它拆分|(包括空格.不幸的是,使用这段代码不可能:
string[] address = ip.Split(new char[] {'|'}, StringSplitOptions.RemoveEmptyEntries);
Run Code Online (Sandbox Code Playgroud)
因为这会导致"192.168.10.30 ".我知道我可以添加.Trim(),address[0]但这是非常正确的方法吗?
简单地将空格(' | ')添加到搜索模式给了我一个
无法识别的转义序列