在按钮单击甚至Form1的处理程序,我想创建Form2.这是我的代码,
甚至是Form1的button1的处理程序
// button1 belongs to Form1
private void button1_Click(object sender, EventArgs e)
{
Form2 form2 = new Form2("www.google.com");
form2.ShowDialog();
}
Run Code Online (Sandbox Code Playgroud)
Form2构造函数
public Form2 (string str)
{
InitializeComponent();
address = str;
button2.Text = str; // button2 belongs to Form2
}
public Form2()
{
InitializeComponent();
}
Run Code Online (Sandbox Code Playgroud)
我的问题和关注是,按钮1事件处理程序由Form1的UI线程执行,如果我在Form1 UI线程内创建新的Form2,并使用UI线程来设置Form2的UI元素(button2.Text),这是合法的吗?我的理解是每个Form都有它的所有者UI线程和UI元素(例如按钮)应该只由表单个体所有者线程处理?如果我的代码是错误的,那么如果有人能够告诉我在当前表单的事件处理程序中创建另一个Form并传递参数的优雅方法,那就表示赞赏.
我使用的是VSTS 2008 + C#+ .Net 2.0.
如何从经典ASP调用COM对象?我努力但却找不到一个好的教程.有什么建议?
我在经典ASP中使用C#.
我在Windows Server 2003 x64上使用PowerShell 1.0.执行以下语句时,下面有错误.并非每次发生此错误,并且如果发生此错误并且我再次执行此命令,则不会再出现错误!太奇怪了.有什么想法有什么不对?
Stop-Service "SQLServerAgent" -Force -ErrorAction:stop
WARNING: Waiting for service 'SQL Server Agent (MSSQLSERVER) (SQLSERVERAGENT)'
to finish stopping...
out-lineoutput : The OS handle's position is not what FileStream expected. Do n
ot use a handle simultaneously in one FileStream and in Win32 code or another F
ileStream. This may cause data loss.
Run Code Online (Sandbox Code Playgroud)
乔治,提前谢谢
我使用C#+ VSTS2008 + .Net 3.0来进行XML序列化.代码工作正常.下面是我的代码和当前序列化的XML结果.
现在我想在输出XML文件中添加两个附加层.这是我期望的XML结果.有什么简单的方法吗?我不确定NestingLevel是否可以帮助这样做.我想找到一种不会改变MyClass和MyObject结构的简单方法.
预期的XML序列化结果,
<?xml version="1.0"?>
<MyClass xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<MyObjectProperty>
<AdditionalLayer1>
<AdditionalLayer2>
<ObjectName>Foo</ObjectName>
</AdditionalLayer1>
</AdditionalLayer2>
</MyObjectProperty>
</MyClass>
Run Code Online (Sandbox Code Playgroud)
当前的XML序列化结果,
<?xml version="1.0"?>
<MyClass xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<MyObjectProperty>
<ObjectName>Foo</ObjectName>
</MyObjectProperty>
</MyClass>
Run Code Online (Sandbox Code Playgroud)
我目前的代码,
public class MyClass
{
public MyObject MyObjectProperty;
}
public class MyObject
{
public string ObjectName;
}
public class Program
{
static void Main(string[] args)
{
XmlSerializer s = new XmlSerializer(typeof(MyClass));
FileStream fs = new FileStream("foo.xml", FileMode.Create);
MyClass instance = new MyClass();
instance.MyObjectProperty = new MyObject();
instance.MyObjectProperty.ObjectName = "Foo";
s.Serialize(fs, …Run Code Online (Sandbox Code Playgroud) 我正在使用SQL Server 2008 Enterprise.我需要将所有数据从服务器/实例"Server Foo",数据库"Foo"和表"Foo"导入目标服务器/实例"Server Goo",数据库"Goo"和表"Goo".表Foo和Table Goo具有相同的模式.如果表Goo存在相同的行,我想将原始数据保存在Goo中,并且在Foo中输入导入行(表Foo和表Goo都有一个名为CustomerID的uniqueidentifier类型列,它充当主键和聚簇索引),喜欢忽略重复键.
我正在寻找简单可靠的方法来编写T-SQL来解决数据导出/导入问题.有参考样品吗?
编辑1:
我使用MERGE尝试了以下解决方案,但遇到了SQL Server Management Studio中的以下错误.有什么想法有什么不对?
更多信息:
LabTest1\SQLServer2008 =>服务器\实例名称; OrderDB => DB名称; dbo =>架构名称; 订单=>表名.
merge into [dbo].[Orders] as Target
using "LabTest1\SQLServer2008.OrderDB.dbo.Orders" as source
on target.Hash = source.Hash
when not matched then
INSERT ([Hash]
,[Order]
,[Name]
,[CreationTime]
,[Description])
VALUES
(
source.[Hash], source.[Order], source.[Name], source.[CreationTime], source.[Description]
)
when MATCHED then
;
Run Code Online (Sandbox Code Playgroud)
错误信息:
消息102,级别15,状态1,行16''''附近的语法不正确.
乔治,提前谢谢
对于.Net MemoryStream对象实例,使用后是否需要显式关闭它?或者不需要关闭它?哪种方法最好?
我使用的是VSTS2008 + .Net 3.5 + C#.
我使用的是Visual Studio Team System 2008(VSTS),C#,.NET 3.5,IIS 7.0和ASP.NET.我有两个IIS网站,站点A和站点B.他们的相关域名是,http://sitea.example.com和http://siteb.example.com.
我听说使用表单认证时,我们可以启用域级别的Cookie,也就是说,如果两个站点都在同一个域(例如两者sitea.example.com并siteb.example.com在域example.com),最终用户只需要进行一次认证.更详细地说,如果用户通过其中一个站点进行了身份验证(通过身份验证),则无需再在其他站点中对用户进行身份验证.
如何为我sitea和siteb?启用此功能?我是否需要更改两个web.config中sitea和siteb?
另一个困惑是,如果用户通过身份验证sitea,则可以确定用户的身份是否被识别sitea,但是如何siteb在不再对用户进行身份验证的情况下识别用户的身份?
我正在使用VSTS 2008 + C#+ .Net 3.5来开发Windows服务应用程序.下面的代码非常简单,我发现当File.Copy抛出异常(例如路径无效,没有权限等)时,服务将崩溃并弹出一个对话框让我调试.我的困惑是,我认为由Windows服务创建的线程的未处理异常永远不会使服务崩溃.为什么我的服务崩溃并弹出调试对话框?
public partial class Service1 : ServiceBase
{
public Service1()
{
InitializeComponent();
}
protected override void OnStart(string[] args)
{
Thread t = new Thread (WriteF);
t.Start();
}
static void WriteF() {
File.Copy("dummy.txt", @"\\somelocation\dummy.txt");
}
protected override void OnStop()
{
}
}
Run Code Online (Sandbox Code Playgroud) 我正在使用Windbg使用!U来自sos.dll的Windbg 命令来组装托管代码(用C#编写,控制台应用程序).我发现当使用!Udiassemble一个托管函数时,反汇编的IL代码只包含我做的函数调用,例如a=a*2,对于其余部分(非函数调用C#代码)和foreachC#中的循环,只显示了本机汇编语言代码,这是正确的预期行为吗?
我的问题是,我想知道是否能够用所有代码(除了函数调用代码)将管理代码二进制DLL反汇编成IL?
提前谢谢,乔治
我正在使用VSTS 2008 + C#+ ADO.Net + SQL Server 2008.我对SQL Server 2008将使用哪种通信协议的问题,我的问题的更多细节,
如果连接字符串如下所示,是使用命名管道还是TCP/IP?是否使用不同的通信协议取决于客户端和SQL Server是否在同一台机器上?
数据源= labtest1;初始目录= CustomerDB; Trusted_Connection = true;异步
在SQL Server配置管理器中,有一些项称为"SQL Server网络配置"和"SQL Native Client 10.0配置".我发现它们都有命名管道或TCP/IP的配置选项(用于通信协议),"SQL Server网络配置"和"SQL Native Client 10.0配置"之间有什么区别?
.net ×6
c# ×6
ado.net ×1
asp-classic ×1
asp.net ×1
com ×1
debugging ×1
iis-7 ×1
memorystream ×1
powershell ×1
sql ×1
sql-server ×1
t-sql ×1
vbscript ×1
windbg ×1
winforms ×1
xml ×1