可能重复:
"分支","标签"和"主干"真正意味着什么?
Subversion中的trunk,branch和tag是什么?使用它们的最佳实践是什么?
我可以在Visual Studio 2008中使用哪些工具进行Subversion ?
作为我在C#中工作的项目的一部分,我需要读取.dbf文件.我想要做的第一件事是从文件中获取架构表.只要文件名(没有扩展名)不超过8个字符,我的代码就可以正常工作.
例如,假设我有一个名为MyLongFilename.dbf的文件.以下代码不起作用; 它抛出以下异常:"Microsoft Jet数据库引擎找不到对象'MyLongFilename'.确保对象存在,并正确拼写其名称和路径名称."
string cxn = "PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=C:\MyLongFilename;Extended Properties=dBASE 5.0";
OleDbConnection connection = new OleDbConnection(cxn);
Run Code Online (Sandbox Code Playgroud)
要通过此异常,下一步是使用OldDbConnection喜欢的名称('MyLongF~1'而不是'MyLongFilename'),这导致:
string cxn = "PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=C:\MyLongF~1;Extended Properties=dBASE 5.0";
OleDbConnection connection = new OleDbConnection(cxn);
Run Code Online (Sandbox Code Playgroud)
这确实成功返回了OleDbConnection.现在要获取模式表,我尝试以下方法:
connection.Open();
DataTable schemaTable = connection.GetOleDbSchemaTable(OleDbSchemaGuid.Columns,
new object[] { null, null, fileNameNoExt, null });
Run Code Online (Sandbox Code Playgroud)
这将返回没有行的DataTable.如果我将文件名重命名为8个或更少的字符,那么此代码可以工作,我会为数据库中的每个字段返回一行.
使用长文件名,我知道返回的连接是有效的,因为我可以使用它来填充DataSet,如下所示:
string selectQuery = "SELECT * FROM [MyLongF~1#DBF];";
OleDbCommand command = new OleDbCommand(selectQuery, connection);
connection.Open();
OleDbDataAdapter dataAdapter = new OleDbDataAdapter();
dataAdapter.SelectCommand = command;
DataSet dataSet = new DataSet();
dataAdapter.Fill(dataSet);
Run Code Online (Sandbox Code Playgroud)
这使我返回一个包含DataTable的DataSet,其中包含dbf文件中的所有数据.
所以问题是如何才能获得长命名dbf文件的模式表?当然,我可以通过重命名/复制文件来解决这个问题,但这是一个我不想做的黑客攻击.我也不想用前1个记录填充DataSet并从列中推断出架构.
我在Oracle中有Date Var,我尝试从C#程序中插入Data
sql = "insert into Table(MyDate) values (" + convert.todatetime(txt) + ")";
Run Code Online (Sandbox Code Playgroud)
我收到错误,我该怎么办?
我有一个字符串数组,里面填充了句子中的单词.
words[0] = "the"
words[1] = "dog"
words[2] = "jumped"
words[3] = "over"
words[4] = "the"
words[5] = "wall."
words[6] = "the"
words[7] = "cat"
words[8] = "fell"
words[9] = "off"
words[10] = "the"
words[10] = "house."
Run Code Online (Sandbox Code Playgroud)
等(愚蠢的例子,但它适用于此)
每个单词都是一个键,它的后续单词就是它的值.所以"over"=>"the".某些键可以有多个值.例如,"the"=>"dog"|| "墙"|| "猫"|| "屋".该值是从该密钥的值中随机选择的.
当程序运行时,它会随机选择一个单词并生成一个句子.所以它可能是这样的:"猫掉了狗".
我尝试实现一个map(map myMap;),但是每个键只允许一个值(我认为).
希望我解释得对.
我在SQL Server 2005中有一个遗留数据表,它有一个没有身份/自动增量的PK,没有实现它的能力.
因此,我不得不通过ole"SELECT MAX(id)+ 1 FROM table"-before-insert技术手动在ASP.NET中创建新记录.
显然,如果同时插入,这会在ID上产生竞争条件.
什么是优雅地解决比赛碰撞事件的最佳方式?我正在寻找检测碰撞的VB.NET或C#代码的想法,然后通过获得另一个max(id)+ 1来重新尝试失败的插入.可以这样做吗?
思考?评论?智慧?
谢谢!
注意:如果我无法以任何方式更改数据库怎么办?
我需要能够禁用WinForms应用程序的TreeView控件中的一些复选框,但是标准TreeView控件没有内置这样的功能.
我已经在使用TreeView.BeforeCheck事件并取消它,如果该节点被禁用并且完全正常.
我还将禁用节点的ForeColor更改为GrayText.
有没有人有一个简单而强大的解决方案?
假设我有一个数组,我想对varchar进行LINQ查询,该查询返回在varchar中任何位置都有数组元素的记录.
像这样的东西会很甜蜜.
string[] industries = { "airline", "railroad" }
var query = from c in contacts where c.industry.LikeAnyElement(industries) select c
string[] industries = { "airline", "railroad" }
var query = from c in contacts where c.industry.LikeAnyElement(industries) select c
string[] industries = { "airline", "railroad" }
var query = from c in contacts where c.industry.LikeAnyElement(industries) select c
有任何想法吗?
说我有这两个对象:
OracleConnection connection = new OracleConnection(connectionString);
OracleCommand command = new OracleCommand(sql, connection);
Run Code Online (Sandbox Code Playgroud)
要关闭连接或Oracle,我是否必须调用command.Dispose(),connection.Dispose()或两者?
这够好了:
using(connection)
{
OracleDataReader reader = cmd.ExecuteReader();
// whatever...
}
Run Code Online (Sandbox Code Playgroud) 我正在为安全子系统创建一个设计文档,用C++编写.我已经为主要用例创建了一个类图和序列图.我还为每个类指定了公共属性,关联和方法.但是,我还没有将方法定义深入到C++级别.由于我是C++的新手,和其他开发人员一样,我想知道它是否有意义继续并指定到这个级别.思考?
编辑:哇 - 完全反对,一致.我正在考虑,例如,关于指定const与非const,传递引用,处理默认构造函数和赋值等的整个业务.我相信到目前为止,详细说明这个细节是很有帮助的.我肯定已经清楚地知道系统将如何工作.也许如果我只是做一些方法,作为一个例子,在深入研究代码之前?
zend框架有许多我不需要的组件/服务,它有很多包含.所有这些我认为减慢了应用程序.你知道如何加快它吗?可能是删除未使用(什么是常见的)组件,或将文件合并到一个文件?