编辑:让我完全改写一下,因为我不确定是否有像我最初描述的XML方式.
还有另一个编辑:这需要是一个可重复的过程,并且必须能够以可以在C#代码中调用的方式进行设置.
在数据库A中,我有一组与PK和FK相关的表.一个父表,包括子表和孙表,让我们说.
我想将一组行从数据库A复制到数据库B,数据库B具有相同名称的表和字段.对于每个表,我想插入数据库B中的同一个表中.但我不能限制使用相同的主键. 复制例程必须为数据库B中的每一行创建新的PK,并且必须将这些PK传播到子行.换句话说,我在数据之间保持相同的关系,但不是完全相同的PK和FK.
你怎么解决这个问题?我愿意接受建议.SSIS并没有完全被排除在外,但它并不像我这样对待它.我也对LINQ中的解决方案,或者使用类型化的DataSet,或者使用某些XML,或者只是在SQL Server 2005和/或C#(.NET 3.5)中可以使用的任何东西开放.最好的解决方案不需要SSIS,也不需要编写大量代码.但我会承认,这种"最佳"解决方案可能不存在.
(我没有自己完成这项任务,也没有限制;这就是给我的方式.)
在.NET中的类型化DataSet的.xsd文件中,有一个<Connections>部分包含我用于设置DataTables和TableAdapter的任何数据连接的列表.
有时我不想在那里有那些.例如,有时我更喜欢将连接字符串传递给自定义构造函数并使用它而不是在设置,.config等中查找.
但似乎如果我从该部分删除连接字符串(将其留空),或者完全删除该部分,DataSet代码生成工具就会吓坏.然而,如果我不删除它们,当我将它放在不同的项目中时DataSet会抱怨,因为它无法找到这些连接字符串的设置.
有什么方法可以告诉类型化DataSet不要担心任何连接?(显然,如果我更改任何TableAdapter SQL或存储过程,我将不得不给它一个连接,但这应该是我的问题.)
我有一个包含多个字段的GridView,其中一个可能具有疯狂的广泛价值,如下所示:
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
如果说这种事情是在场上,我希望它来包装.
我可以轻松地在每50个字符左右的代码中插入一个字符......但是什么字符?如果我使用\ r \n或空格等,那么有时设置不会换行(因为不同行的50个字符更宽),我得到这样的结果:
mmmmmmmmmm
mmmmm
llllllllll llllllllll llll
我不希望那些空间出现; 如果可以,我只想让线包裹在那里,否则什么都不显示:
mmmmmmmmmm
mmmmm
llllllllllllllllllllllllll
另外,如果可能的话,我宁愿打开 HtmlEncode .有没有办法做到这一点?
在WinForms中,用户更改了TextBox中的文本后,我可以处理Validated事件以执行某些操作。与TextChanged不同,Validated不会在每次字符更改时触发;仅在用户完成后才触发。
我可以使用WPF中的任何东西来获得相同的结果,只有在用户完成更改文本后才引发的事件?
我在Visual Studio 2008中使用类图来创建一些具有属性的类.我注意到,当我在类图中创建一个新属性时,它出现在这样的代码中:
public DateTime DateBilled
{
get
{
throw new System.NotImplementedException();
}
set
{
}
}
Run Code Online (Sandbox Code Playgroud)
呸.我更倾向于它最终成为这样的autoproperty:
public DateTime DateBilled { get; set; }
Run Code Online (Sandbox Code Playgroud)
有什么方法可以改变或定制吗?
c# code-generation class-diagram visual-studio-2008 visual-studio
我正在尝试建立一个C#项目,在构建时运行xUnit测试,所以我可以在持续集成中使用它们.我有一个常规项目,一个使用xUnit的类库测试项目,以及我的测试运行器项目.从我读过的所有内容看来,我应该能够通过在测试运行器项目中执行此操作来实现此功能:
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Test"
xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
[auto-created project stuff]
<UsingTask AssemblyFile="xunit.runner.msbuild.dll"
TaskName="Xunit.Runner.MSBuild.xunit" />
<Target Name="Test">
<xunit Assembly="$(MSBuildProjectDirectory)\..\OnePageOneDb.Tests\bin\Debug\OnePageOneDb.Tests.dll" />
</Target>
</Project>
Run Code Online (Sandbox Code Playgroud)
当我在更改后构建我的解决方案(通常编辑.csproj文件)时,我得到了这个:
无法从程序集C:\ Users [myusername]\Code\OnePageOneDb\OnePageOneDb.TestRunner\xunit.runner.msbuild.dll加载"Xunit.Runner.MSBuild.xunit"任务.无法加载文件或程序集'file:/// C:\ Users [myusername]\Code\OnePageOneDb\OnePageOneDb.TestRunner\xunit.runner.msbuild.dll'或其依赖项之一.该系统找不到指定的文件.确认声明是否正确,程序集及其所有依赖项是否可用,以及该任务是否包含实现Microsoft.Build.Framework.ITask的公共类.
即使我将xunit.runner.msbuild.dll和xunit.runner.utility.dll添加到它引用的位置的项目中,我收到此消息.但如果我再次建造没有任何变化,我会一直得到这个:
找不到"xunit"任务.请检查以下内容:1.)项目文件中任务的名称与任务类的名称相同.2.)任务类是"public"并实现Microsoft.Build.Framework.ITask接口.3.)在项目文件或位于"C:\ Windows\Microsoft.NET\Framework\v4.0.30319"目录中的*.tasks文件中正确声明了任务.
但我检查了所有这些东西:
Xunit.Runner.MSBuild.xunit(并且xunit 在类名中是小写的).(我还认为问题可能是xunit.runner.msbuild.dll针对的是.NET 2.0,而我正在使用VS 2010,但我在.NET 2.0中重新创建了测试运行器项目并且问题仍然存在.)
有人可以帮忙吗?
我是.NET开发人员,但在我们的组织中,我们还有几个Microsoft Dynamics NAV开发人员.目前他们没有使用任何源代码控制.我对NAV知之甚少,但据我了解,你可以编写NAV中的对象并从脚本导入.
既然如此,是否有人使用GIT与NAV?你有没遇到任何陷阱?我想知道这是否是一个很好的解决方案,建议他们,以及管理是否比使用Git with .NET(我发现相当容易)更复杂.
使用dotTrace时,我必须选择一个分析模式和一个时间测量方法. 分析模式是:
和时间测量方法是:
跟踪和逐行不能使用线程时间测量.但这仍然让我有七种不同的组合尝试.我现在已经十几次阅读了这些关于dotTrace的帮助页面了,而且我仍然没有比我开始知道选择哪一个更有见识.
我正在开发一个WPF应用程序,它可以读取Word文档,提取所有段落和样式,然后遍历提取的内容以选择文档部分.我正在尝试优化这个过程.(目前完成需要一个多小时,因此我试图在给定的时间内对其进行分析,而不是直到完成.)
哪种性能分析和时间测量类型会给我最好的结果?或者,如果答案是"它取决于",那么它依赖于什么?给定的分析模式或时间测量方法的优缺点是什么?
我正在使用git-tfs克隆TFS存储库,这是我过去能够成功完成的事情。但是在运行命令时使用当前版本,就像这样...
git tfs clone http://NameOfOurTfsServer:8080/ $/NameOfMyProject -d
...我得到一个错误代码128,例如:
System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> Sep.Git.Tfs.Core.GitCommandException: Command exited with error code: 128 at Sep.Git.Tfs.Core.GitHelpers.Close(Process process) in c:\Users\matt\dev\github\git-tfs\GitTfs\Core\GitHelpers.cs:line 205 at Sep.Git.Tfs.Core.GitHelpers.<>c__DisplayClass8.<CommandOutputPipe>b__7() in c:\Users\matt\dev\github\git-tfs\GitTfs\Core\GitHelpers.cs:line 59 [etc.]
这是在git-tfs 14.0上。我已经尝试了几个以前的git-tfs版本,但是每个版本都得到相同或相似的错误。
有人碰到这个吗?你知道解决办法吗?