我的程序中有以下代码:
//Dialog Form Class
public int Age;
private void goButtonClick(object sender, EventArgs e)
{
Age = trackBar1.Value;
Close();
}
//Main Form Class
DialogForm df = new DialogForm();
df.ShowDialog();
df.Dispose();
if(df.Age >= 18)
{
//do stuff
}
Run Code Online (Sandbox Code Playgroud)
出人意料的是,我想我会需要一种方法来访问df.Age,因为它会被安置于由Close方法,但奇怪的是,我可以访问这个值.我认为这是垃圾收集器的某种智能,所以我df.Dispose()在调用df.Age之前添加了一下,看看会发生什么,但我仍然可以访问它.所以我感到困惑?为什么会这样?什么时候物品被处理?
我试图将用于richtextbox的值插入到mysql字段中.由于MySQL不会处理\\或\r从字面上看,我想替换所有出现的\用\\.我试过了:
mystring.Replace(@"\", @"\\");
Run Code Online (Sandbox Code Playgroud)
但它不适用于\r,\n等等.我还能做到这一点吗?
编辑: 我的输入看起来像:
\ RTF1\ANSI\ansicpg1252\deff0\r \n
我的输出应该如下所示:
\\ \\ RTF1 ANSI \\ \\ ansicpg1252 deff0\r \n
谢谢.
我必须用这种逻辑做很多查询:
现在,我想创建一个会执行此操作的过程,因此我尝试创建一个将执行上述操作的函数,但最终会在函数中无法实现的动态查询中结束.
是否有可能实现这一目标?我怎么能这样做?
PS:也许是这样的:
select
(IF EXISTS(SELECT * FROM Dtl_Patient WHERE Pk = 3990 select 'Yes' else select 'No')) as output from dtl_AllPatient;
Run Code Online (Sandbox Code Playgroud) 我试图为表中的每个字段插入两个数据,如下所示:
INSERT INTO `wp_postmeta` (post_id, meta_key, meta_value)
SELECT post_id, 'custom', custom
SELECT post_id, '_custom', 'field_514e91e73640d'
FROM `wp_temp`
WHERE custom IS NOT NULL
Run Code Online (Sandbox Code Playgroud)
但是,这不起作用.无论如何在MySQL的一个查询中实现这一点?谢谢.
如何在C#中存储类似以下字符串的内容:
string mystring = @"CMD.AddParameters("@Pkey", SqlDbType.Int, Pkey.ToString());";
Run Code Online (Sandbox Code Playgroud) 有时,我得到了辅助方法,如:
private string generateReport(string doc, List<string> sheets, Blah blahblah)
{
//doStuff()
}
Run Code Online (Sandbox Code Playgroud)
在我的代码中看到很多这个让我想知道我是不是在搞乱计算机内存 - 来回抛出参数.在基本层面上,这个问题通过使用类级别变量来解决,但在某些情况下,我可能是从一个类派生或使用另一个类的辅助方法.所以我的问题是:
使用引用是一个更好的选择吗?即
private string generateReport(ref string doc, ref List<string> sheets, ref Blah blahblah)
{
//doStuff()
}
Run Code Online (Sandbox Code Playgroud)
什么时候应该我不使用它(如果适用)?
谢谢.
我试图以不同的方式初始化构造函数,如果它使用符合特定条件的参数调用,并且我有以下代码.
class MessageEventArgs : EventArgs
{
private int _pId;
private string _message;
private string _channelPath;
public MessageEventArgs(string message)
{
_pId = Process.GetCurrentProcess().Id;
_message = message;
_channelPath = null;
}
public MessageEventArgs(string[] details)
{
if (details.Length == 1)
{
new MessageEventArgs(details[0]);
return;
}
_pId = int.Parse(details[0]);
_message = details[1];
_channelPath = details[2];
}
}
Run Code Online (Sandbox Code Playgroud)
令人惊讶的是,在逐行调试和逐步调试时,我看到所有调用都正常,但在实例化之后,pId并且_message具有默认值,即0和null
c# ×5
mysql ×2
sql ×2
constructor ×1
escaping ×1
oop ×1
reference ×1
sql-server ×1
string ×1
t-sql ×1