我有一个包含以下列的表:EntityId,EntityName,EntityProfile,.................
我想根据实体配置文件的值选择Id和Name以及true/false列,例如,返回的结果集如下所示,意味着实体1和2具有配置文件而3则不具有配置文件.
1 Name1 True
2 Name2 True
3 Name3 False
etc.....
Run Code Online (Sandbox Code Playgroud)
我知道我可以使用一个基于配置文件值返回true/false的函数来完成它,如下所示:SELECT EntityId,EntityName,dbo.EntityHasProfile(EntityId)AS HasProfile FROM Entities
但是我要回来了.记录和用这个函数调用每条记录,查询非常慢,当我删除函数调用时,查询执行时间明显下降.
那么还有另一种方法吗?谢谢
我经常想知道为什么C#还没有实现Generic Enum.Parse
可以说我有
enum MyEnum
{
Value1,
Value2
}
Run Code Online (Sandbox Code Playgroud)
从XML文件/数据库条目我想创建一个枚举.
MyEnum val = (MyEnum)Enum.Parse(typeof(MyEnum), "value1", true);
Run Code Online (Sandbox Code Playgroud)
难道它没有被实现为类似的东西
MyEnum cal = Enum.Parse<MyEnum>("value1");
Run Code Online (Sandbox Code Playgroud)
这似乎是一个小问题,但它似乎是一个被忽视的问题.
有什么想法吗?
我正在写一个库,所以,我希望它的功能尽可能清晰明确地命名.目前,我使用以下原则:
我很想知道是否有什么东西我不见了.另外,你能想到除了is,has,get和set之外的其他一些前缀吗?
这可能是一个基本问题,但我必须承认,我从未真正理解Control.Enter和Control.GotFocus事件之间的区别.
http://msdn.microsoft.com/en-us/library/system.windows.forms.control.enter.aspx http://msdn.microsoft.com/en-us/library/system.windows.forms.control .gotfocus.aspx
它是捕获键盘或鼠标输入或其他东西之间的区别?
数组是由假定的元素定义的,比如我有像String [] strArray = new String [50]这样的数组; .
现在从50个元素中只分配了一些元素,剩下的都是null,然后我想要分配元素的数量.
像这里只分配了30个元素然后我想要那个数字.
我有一个慢速运行的查询,我一直在努力优化.
在Management Studio中查看客户端统计信息时,服务器回复的等待时间约为8秒,客户端处理时间约为1秒.
我一直认为服务器回复的等待时间是要处理的数量,客户端处理时间通常是带宽或大数据大小相关.
我对查询进行了一些更改,现在我在服务器回复上的等待时间大约为250毫秒,但是,客户端处理时间增加到大约9秒,使得总执行时间略微变慢.
返回的结果集完全相同.
有人可以说明这两个数字之间的差异到底是什么以及会导致这样的结果?
我有一个构建地址字段的循环,其中一些字段可能在字符串的末尾为空
List<string> list = new List<string>();
//list can contain any number of values, some of which might be "" (empty string)
string returnValue = "";
for (int iRow = 1; iRow <= list.Count; iRow++)
returnValue += String.Format("{0}, ", list[iRow]);
returnValue = returnValue.Trim();
Run Code Online (Sandbox Code Playgroud)
我的输出是
asd, aaa, qwe, 123123, , , , ,
Run Code Online (Sandbox Code Playgroud)
如何从字符串中删除尾随","?
C#Array,如何使数组中的数据彼此不同?例如
string[] a = {"a","b","a","c","b","b","c","a"};
Run Code Online (Sandbox Code Playgroud)
如何获得
string[]b = {"a","b","c"}
Run Code Online (Sandbox Code Playgroud) 我只是碰到了一些非常奇怪的东西,只是想知道我是否遗漏了一些东西.
我试图将一个字符串(有千个分隔符)解析为一个double,并找到了下面的问题.
CultureInfo ci = CultureInfo.CurrentCulture; // en-ZA
string numberGroupSeparator = CultureInfo.CurrentCulture.NumberFormat.NumberGroupSeparator; //numberGroupSeparator = ,
string numberDecimalSeparator = CultureInfo.CurrentCulture.NumberFormat.NumberDecimalSeparator;//numberDecimalSeparator = .
string strValue = "242,445.24";
double try1;
double try2;
bool btry1 = Double.TryParse(strValue, out try1); //try1 = 242445.24 : btry1 = true
bool btry2 = Double.TryParse(strValue, NumberStyles.Any, null, out try2); //try2 = 0.0 : btry2 = false <- STRANGE
double try3 = Convert.ToDouble(strValue); //try3 = 242445.24
Run Code Online (Sandbox Code Playgroud)
现在我之所以不想使用的原因Convert.ToDouble是因为科学记谱法之前给了我一些问题.
有人知道为什么会这样吗?
编辑:
我已经更新了我当前的文化信息.
当代码在下面执行时,我假设每次解析查询时都会从文件系统中读取停用词文件.而不是这样做,我可以重用相同的分析器实例而不是创建一个新的分析器吗?它是线程安全的吗?(经过大量的谷歌搜索后,我找不到任何关于此的信息)
var stopwordsFile = new FileInfo("C:\MyStopWordsFile.txt");
var analyzer = new StandardAnalyzer(stopwordsFile);
var queryParser = new QueryParser("", analyzer);
var query = queryParser.Parse(stringToParse);
Run Code Online (Sandbox Code Playgroud) c# ×6
.net ×2
arrays ×2
sql-server ×2
winforms ×2
cultureinfo ×1
enums ×1
events ×1
function ×1
generics ×1
lucene.net ×1
performance ×1
string ×1
windows ×1