草庐IT

SINGLE_COLUMN

全部标签

c# - 从 Single 到 Decimal 的显式转换导致不同的位表示

如果我将singles转换为decimald我注意到它的位表示与直接创建的小数。例如:Singles=0.01f;Decimald=0.01m;int[]bitsSingle=Decimal.GetBits((decimal)s)int[]bitsDecimal=Decimal.GetBits(d)返回(为简洁起见删除了中间元素):bitsSingle:[0]=10[3]=196608bitsDecimal:[0]=1[3]=131072这两个都是十进制数,都(看起来)准确地表示0.01:查看规范没有任何亮点,除了可能:§4.1.7Contrarytothefloatanddouble

c# - WPF 数据网格 : Clear column sorting

我在我的应用程序中使用WPF数据网格,可以通过单击标题对列进行排序。我想知道是否有任何方法可以以编程方式清除列的排序?我尝试对一列进行排序,然后清除MyDataGrid.Items.SortDescriptions,但该集合为空(即使对一列进行了排序)。我也试过:MyDataGridColumn.SortDirection=null;问题是列指示消失了,但是在编辑单元格和切换行时排序仍然出现。有没有办法清除列的排序?编辑(为清楚起见):问题是如果用户重新单击同一列标题,我想允许再次排序,因此将CanUserSort设置为false会有问题,即使它是在XAML中完成的.简而言之,我正在尝

c# - "Cannot insert explicit value for identity column in table when IDENTITY_INSERT is set to OFF"带复合键

我们最近向我们的数据库添加了一个新的“级别”——在整个数据库中的表中现有ID身份字段的上方/之前添加了一个键“Company_ID”。例如,如果一个表有ID然后是字段,它现在有Company_ID,然后是ID,然后是字段。这个想法是,这允许ID为提供给功能的每个不同的Company_ID值自动递增(Company_ID1可以有ID1、2、3等;Company_ID2可以有ID1、2、3等)。自增字段保持为ID。一个示例表是:[dbo].[Project]([Company_ID][int]NOTNULL,[ID][int]IDENTITY(1,1)NOTNULL,[DescShort]

c# - Entity Framework : Invalid Column after removing the column

我在EntityFramework中映射了一个表,它非常适合添加/更新和删除记录。我从SQL服务器中删除了一个名为“Category”的列,然后在模型中重新映射了我的实体。这工作正常,该列消失了。现在,我在表上运行查询以更新一行并得到相同的错误,列“类别”无效。这已经从SQL表中删除并从实体中删除,所以当我运行以下代码时它还在寻找这个该死的列吗??using(Entitiesdb=newEntities()){varVoucher=(fromvouchersindb.Voucherswherevouchers.ID==IDselectvouchers).FirstOrDefault()

c# - Entity Framework 4.3 beta [Column(TypeName)] 问题,无法创建 xml 类型的列

我知道这是一个测试版(刚刚检查了EF4.3的新版本,它做了同样的事情)发布并且一些功能可能缺失,但我没有看到任何可以解释原因的东西......[Column(TypeName="xml")]publicstringSomeProperty{get;set;}...在使用EF4.3时不再创建xml类型的列(列创建为nvarchar(max)),我已经尝试过EF4.2并且可以很好地创建列。仅供引用,我正在连接到sqlserver2008r2并且还尝试了快速版。我正在使用XML来存储不断变化的数据模式的数据,虽然我知道这将作为字符串传回我需要能够针对sql中的xml数据创建存储过程。我也尝试

c# - 使用 Single 作为 Assert 是一种不好的做法吗?

我正在测试一种操作集合的方法。给定一组参数,它应该只包含一个与条件匹配的元素。编辑:该集合可能还有其他几个不符合条件的元素。我正在使用Single测试该行为,效果很好,因为如果根本没有匹配项或多个匹配项,它将通过抛出异常来使测试失败。但是没有实际的断言,它以某种方式违反了arrange、act、assert。所以我想知道这是否是一种不好的做法,是否有更好的方法来做到这一点。以下伪代码演示我的问题:[TestMethod]publicvoidTestMethod(){Listlist=MethodToTest(param1,param2);list.Single(s=>s.Matches

c# - "Current thread must be set to single thread apartment (STA)"将字符串复制到剪贴板时出错

我试过来自HowtocopydatatoclipboardinC#的代码:Clipboard.SetText("Test!");我得到这个错误:Currentthreadmustbesettosinglethreadapartment(STA)modebeforeOLEcallscanbemade.EnsurethatyourMainfunctionhasSTAThreadAttributemarkedonit.我该如何解决? 最佳答案 如果您无法控制线程是否以STA模式运行(即测试、插件到其他应用程序或只是一些随机发送该调用以在无

c# - 找不到类型或命名空间名称 'Column'

我确定我在这里遗漏了一些简单的东西。我正在尝试遵循CodeFirstEntityFramework教程,该教程告诉我使用一些数据注释。usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Threading.Tasks;usingSystem.ComponentModel.DataAnnotations;namespaceModel{publicclassDestination{publicintDestinationId{get;set;}[Required]

c# - DataTable的Row's First Column to String Array

我有一个数据表。我想获取每一行的第一列值并附加到一个字符串数组。我不想对每一行使用foreach循环并添加到字符串数组。我试过了,但在某个时候卡住了DataRow[]dr=newDataRow[dtCampaignSubscriberLists.Rows.Count];dtCampaignSubscriberLists.Rows.CopyTo(dr,0);string[]array=Array.ConvertAll(dr,newConverter(????));谢谢 最佳答案 string[]array=yourTable.AsEn

时间:2018-01-08 标签:c#linq: how to retrieve a single result

对linq有点陌生,使用linq检索单个结果的最简单方法是什么?例子,我的查询varquery=fromcindb.productInfowherec.flavor=="ClassicCoke"&&c.container=="Can"selectc.co2Target;它应该只返回一个具有double值的字段。我如何将其从查询中拉出来?过去我使用过ExecuteScalar。我如何用linq做到这一点?我想保留它的数据类型更新:这就是我现在的位置。问题是我在这里运行的测试查询返回4而不是3.75varquery=(fromaindb.LUT_ProductInfoswherea.fla