草庐IT

db_manager

全部标签

c# - .net 中的转换 : Native Utf-8 <-> Managed String

我创建了这两种方法来将nativeutf-8字符串(char*)转换为托管字符串,反之亦然。以下代码完成这项工作:publicIntPtrNativeUtf8FromString(stringmanagedString){byte[]buffer=Encoding.UTF8.GetBytes(managedString);//notnullterminatedArray.Resize(refbuffer,buffer.Length+1);buffer[buffer.Length-1]=0;//terminating0IntPtrnativeUtf8=Marshal.AllocHGlob

春季集成测试模块从单独的模块运行应用程序,没有DB配置的属性

给定带有Spring应用程序跑步者和PostgresDBConfig的SpringBootGradle模块,将其连接到DB。该应用程序运行完美,并从@config中的“application.yml”文件解析属性。@Value("${db.default.pool.size}")IntegermaxPoolSize;现在,一个称为“IntegrationTests”的单独模块试图在“MD核”模块中启动SpringBootRunner。@ContextConfiguration(classes={MdCore.class})@RunWith(SpringJUnit4ClassRunner.cla

c# - 统一: Change default lifetime manager for implicit registrations and/or disable them

Unity容器将自动解析它可以自行识别的任何类型,无需手动注册。这在某些方面很好,但我遇到的问题是它使用TransientLifetimeManager来解决这种类型的问题,而我几乎总是想要一个ContainerControlledLifetimeManager。当然,我仍然可以手动将我的类型注册为单例,但如果我忘记了,应用程序将成功启动,而不是在启动时出现未处理的异常,并且一切似乎都正常工作。但最终会出现错误,可能非常微妙,难以诊断,因为存在一个类型的多个实例,这意味着是一个单例。所以我的问题是:有没有一种方法可以指定不同的默认生命周期管理器或完全禁用默认的自动解析行为并将容器限制为

c# - 如何在 DB 和 ORM 中为已知和未知日期部分的混合设计出生日期

请注意,我的问题结果类似于SO问题1668172.这是一个设计问题,以前肯定有人向其他人提出过,但我找不到适合我情况的答案。我想在我的应用程序中记录出生日期,其中包含几个“级别”的信息:NULL值,即DoB未知1950-??-??只有DoB年份值已知,日期/月份未知????-11-23只是月、日或两者的组合,但没有年1950-11-23完整的DoB已知我在我的应用中使用的技术如下:Asp.NET4(C#),可能带有MVC一些ORM解决方案,可能是Linq-to-sql或NHibernate的MSSQLServer2008,最初只是Express版到目前为止,我想到的SQL位的可能性:1

c# - 从 C# 运行时 SQL 查询超时,在 SQL Server Management Studio 中运行速度很快

我有一个使用下面列出的代码执行SQL查询的C#程序。直到前几天,我一直在使用这段代码一段时间,没有任何问题。我将一个查询字符串传递给SQL,其中包含一个字符串列表,这些字符串是股票标识符。前几天我跑了一下,查询超时了,让我跑一个多小时。过去几天我一直在尝试调试它。在我最初的查询中,大约有900个标识符。我已经尝试改变我能想到的一切,但我得到了无法解释的结果。例如:该查询适用于一个股票列表,但不适用于另一个在字符串数量和总长度方面具有相同长度的列表它适用于一个列表,但不适用于相反顺序的同一个列表对于一个列表,如果恰好有900个标识符,它就可以工作,但如果有899或901个,它就不会工作,

c# - 在 C# 和 DB 中创建 Guid 键之间的区别

我们使用Guid作为数据库中实体的主键。传统上,我们遵循让数据库在INSERT期间为实体设置ID的模式,我认为这主要是因为这通常是您使用自动递增字段或其他任何方式处理事情的方式。我越来越发现在对象构造期间在代码中进行键分配要容易得多,主要原因有两个:您知道一旦对象的构造函数运行,它的所有字段都已初始化。你永远不会有“半生不熟”的东西。如果您需要执行一批操作,其中一些操作取决于了解对象的键,您可以一次完成所有操作,而无需往返数据库。是否有任何令人信服的理由不以这种方式做事?也就是说,当使用Guid作为键时,是否有充分的理由将键分配留给数据库?编辑:很多人对是否应该将Guid用于PK有强烈

c# - Db Connection.State Change 什么时候调用?

我有以下代码:classProgram{staticvoidMain(){varconnection=newSqlConnection("myConnectionString");connection.Open();connection.StateChange+=HandleSqlConnectionDrop;Console.WriteLine("Hi");Console.ReadLine();}privatestaticvoidHandleSqlConnectionDrop(objectconnection,StateChangeEventArgsargs){Console.Writ

c# - OLE DB 与 OPEN XML SDK 与 Excel.interop

我需要读取XLSX文件并从中提取最大量的内容。我应该使用哪个API?OLEDB、开放式XMLSDK还是ExcelInterop?哪个最容易使用?您能否使用其中一种检索所有信息?即日期、时间、合并单元格、表格、数据透视表等。 最佳答案 您可以尝试所有这些,然后选择最适合您的...根据您想阅读的数据,我建议您使用OpenXMLoverInterop或OleDB。我不知道开放式XMLSDK,尽管我对EPPlus有一些经验我经常使用的图书馆,只能说它的好话-它快速,易于学习,有很好的例子。该库基于OpenOfficeXML格式,所以我想它与

c# - 在C#应用程序中,DB Connection应该创建一次,还是每次执行SQL语句时创建一次?

在C#应用程序中,OleDBConnection应该创建一次,还是每次执行SQL语句时创建一次?我正在查看其他人编写的C#代码。每个SQL语句之前都会创建一个OleDbConnection对象,该对象的连接字符串指向MDB数据库。每次都创建一个OleDbConnection对象是否合适,或者该对象是否应该在应用程序启动时创建并从那时起使用。 最佳答案 根据BestPracticesforUsingADO.NET:Highperformanceapplicationskeepconnectionstothedatasourceinus

访问MAPR-DB表的错误

我在MAPRFS5.2.0上工作。我在尝试访问MAPR-DB表的同时有问题。这是我的代码:Configurationconfiguration=HBaseConfiguration.create();configuration.addResource("hbase-site.xml");HTabletable=newHTable(configuration,"/user/mapr/table1");我的罐子是:Commons-Collections-3.2.2.2.jarCommons-Configuration-1.6.JarCommons-Lang-2.6.JarCommons-Login