小编Eri*_*lje的帖子

Dictionary.FirstOrDefault()如何确定是否找到了结果

我有(或想要)这样的代码:

IDictionary<string,int> dict = new Dictionary<string,int>();
// ... Add some stuff to the dictionary.

// Try to find an entry by value (if multiple, don't care which one).
var entry = dict.FirstOrDefault(e => e.Value == 1);
if ( entry != null ) { 
   // ^^^ above gives a compile error:
   // Operator '!=' cannot be applied to operands of type 'System.Collections.Generic.KeyValuePair<string,int>' and '<null>'
}
Run Code Online (Sandbox Code Playgroud)

我也试过像这样改变违规行:

if ( entry != default(KeyValuePair<string,int>) ) 
Run Code Online (Sandbox Code Playgroud)

但是这也会产生编译错误:

Operator '!=' cannot be applied to operands of …
Run Code Online (Sandbox Code Playgroud)

.net c# linq

48
推荐指数
4
解决办法
4万
查看次数

在iCal文件中编码换行符

我正在试图弄清楚如何在iCal文件的DESCRIPTION部分中编码换行符,以便它们可以正确导入Outlook,Google日历和Apple日历.

我继承的原始代码使用带有引用可打印编码的"= 0D = 0A",这在Outlook中很有用,但在Google日历中却不行.

规范似乎说你应该使用"\n"来表示换行符.这在Google日历中效果很好,但Outlook只会在其中放置文字"\n"字符.

有没有一种方法可以在日历系统中始终如一地工作?

icalendar

46
推荐指数
5
解决办法
4万
查看次数

从VS2012运行SSIS包时,未找到IsVisualStudio2012ProInstalled()方法错误

我正在尝试在Visual Studio 2012中运行SSIS包.当我单击"开始"按钮时,我在Visual Studio的弹出窗口中出现了这个非常奇怪的错误:

Method not found: 'Boolean 
Microsoft.SqlServer.Dts.Design.VisualStudio2012Utils.IsVisualStudio2012ProInstalled()'. 
(Microsoft.DataTransformationServices.VsIntegration)
Run Code Online (Sandbox Code Playgroud)

点击显示技术信息,我得到这个堆栈跟踪:

===================================

Failed to start project (Microsoft Visual Studio)

===================================

Method not found: 'Boolean Microsoft.SqlServer.Dts.Design.VisualStudio2012Utils.IsVisualStudio2012ProInstalled()'. (Microsoft.DataTransformationServices.VsIntegration)

------------------------------
Program Location:

   at Microsoft.DataTransformationServices.Project.DataTransformationsPackageDebugger.LaunchVsDebugger(IVsDebugger iVsDebugger, DataTransformationsProjectConfigurationOptions options)
   at Microsoft.DataTransformationServices.Project.DataTransformationsPackageDebugger.ValidateAndRunDebugger(Int32 flags, IOutputWindow outputWindow, DataTransformationsProjectConfigurationOptions options)
   at Microsoft.DataTransformationServices.Project.DataTransformationsProjectDebugger.LaunchDtsPackage(Int32 launchOptions, ProjectItem startupProjItem, DataTransformationsProjectConfigurationOptions options)
   at Microsoft.DataTransformationServices.Project.DataTransformationsProjectDebugger.LaunchActivePackage(Int32 launchOptions)
   at Microsoft.DataTransformationServices.Project.DataTransformationsProjectDebugger.LaunchDtsPackage(Int32 launchOptions, DataTransformationsProjectConfigurationOptions options)
   at Microsoft.DataTransformationServices.Project.DataTransformationsProjectDebugger.Launch(Int32 launchOptions, DataTransformationsProjectConfigurationOptions options)
Run Code Online (Sandbox Code Playgroud)

有没有人见过这个错误或知道问题可能是什么?一点谷歌搜索对我来说绝对没有任何意义.

几天前,我能够愉快地开发和运行Visual Studio 2012中的SSIS包而没有任何问题(我在周末重启了我的电脑并安装了一些Windows更新)

ETA:

我能够在这里这里找到一些关于这个的非常近期的技术帖帖子,所以我怀疑这是周末更新的内容.一个帖子说他通过重新安装解决了这个问题,但当然如果我不需要,我宁愿不去那条路.

ssis visual-studio-2012

41
推荐指数
2
解决办法
4万
查看次数

调整图像大小以适合边界框

一个简单的问题,但由于某种原因,我今天无法弄清楚这一点.

我需要将图像调整到适合边框的最大可能尺寸,同时保持纵横比.

基本上我正在寻找填写此功能的代码:

void CalcNewDimensions(ref int w, ref int h, int MaxWidth, int MaxHeight);
Run Code Online (Sandbox Code Playgroud)

其中w&h是原始高度和宽度(in),新的高度和宽度(out)以及MaxWidth和MaxHeight定义图像必须适合的边界框.

c# algorithm image-manipulation image-processing

39
推荐指数
5
解决办法
3万
查看次数

禁用Visual Studio 2008 Project的编译

有没有办法告诉visual studio在构建解决方案时不包含项目而不仅仅是从解决方案中移除项目?

我的情况是,解决方案中的一个项目需要一个我没有安装的插件/工具/库,但我们团队中的另一个开发人员需要.所以当我尝试构建解决方案时,我会遇到编译错误.它是一个单元测试项目,因此从编译中删除它不会影响应用程序的功能.

我不想从解决方案中删除项目,因为他在我签入解决方案之后只需要重新添加它(然后我需要在检查时将其删除,无限制).

visual-studio-2008 visual-studio

21
推荐指数
2
解决办法
6279
查看次数

如何将Java控制台输出传递给文件?

我在应用程序中发现了一个完全冻结JVM的错误.生成的堆栈跟踪将为开发人员提供有价值的信息,我想从Java控制台检索它.当JVM崩溃时,控制台被冻结,我无法再复制包含的文本.

有没有办法将Java控制台直接传递给文件或其他一些访问Java应用程序的控制台输出的方法?

更新:我忘记提及,而不更改代码.我是一名手动测试员.

更新2:这是在Windows XP下,它实际上是一个Web启动应用程序.管道输出

javaws jnlp-url
不起作用(空文件).

java testing logging java-web-start

18
推荐指数
3
解决办法
3万
查看次数

删除SQL表中的分层数据

我有一个包含分层数据的表.
一个"ParentId"列,用于保存其父级的Id("ID" - 键列).

删除行时,我想删除所有子项(所有级别的嵌套).

怎么做?

谢谢

sql sql-server-2005

16
推荐指数
3
解决办法
7649
查看次数

真正的多语言编程语言?

我意识到大多数语言都支持多种语言,但我所见过的每种语言都以美国为中心.我的意思是关键字,标准库函数等都有英文名称.所以,作为一名程序员,你仍然需要至少知道一些英语来理解它.

是否有任何真正的"多语言"语言支持语言关键词,以及多种语言?

programming-languages internationalization

12
推荐指数
2
解决办法
3765
查看次数

设计本地化数据库模式

可能重复:
多语言数据库的模式

我正在开发一个我计划以多种语言提供的Web应用程序.在设计数据库时,我会在两种不同的方式之间来回传递,以便在数据库中存储本地化描述和诸如此类的东西.

第一个选项是众所周知的table_name,table_name_ml类型选项:

TABLE Category (
   ID int,
   ParentID int,
   Name varchar(50),
   Description varchar(255)
)

TABLE Category_ML (
   ID int,
   CategoryID int,
   LocaleID int,
   Name varchar(50),
   Description varchar(255)
)
Run Code Online (Sandbox Code Playgroud)

第二种选择是根本不将文本存储在基表中,而是存储一个可用于在其他地方查找实际本地化文本的标记,如下所示:

TABLE Category (
   ID int,
   ParentID int,
   NameToken varchar(50),
   DescriptionToken varchar(50),
)

// Tables in a separate content management type system
TABLE Content (
   ID int,
   Token varchar(50)
)

TABLE Translation (
   ID int
   ContentID int,
   LocaleID int,
   Value text
)
Run Code Online (Sandbox Code Playgroud)

这里的想法是内容和转换表将保存数据库中许多不同实体的本地化文本.服务层将仅使用标记返回基础对象,视图层将使用内容/转换表查找实际文本值 - 这将被高度缓存.内容/翻译表还将用于存储其他CMS类型内容(网页上的静态文本等)

我喜欢第一个选项,因为它尝试过并且是真的,但第二个选项似乎还有很多其他优点:

  1. 我的所有文本/本地化内容都在一个地方(使翻译更容易).
  2. 服务层实际上并不需要关心语言环境.
  3. 通过不必加入一堆ML类型表来简化查询.

由于我以前从未见过这样的设计,我认为我必须遗漏一些东西.有没有好的理由不以这种方式设计呢?或者也许有一个我没有想过的更好的选择?

database-design localization

12
推荐指数
1
解决办法
8500
查看次数

SimpleHttpConnectionManager使用不正确

SimpleHttpConnectionManager使用不正确.确保始终调用HttpMethod.releaseConnection(),并且一次只有一个线程和/或方法使用此连接管理器.

有谁知道为什么会出现此错误并导致我要下载的文件或失败并重试或下载未完成

谢谢 !

java http apache-commons

10
推荐指数
2
解决办法
9479
查看次数