我是一个完整的LINQ新手,所以我不知道我的LINQ是否不正确我需要做什么或者我的性能期望是否太高.
我有一个对象的SortedList,用int键入; SortedList与SortedDictionary相对,因为我将使用预先排序的数据填充集合.我的任务是找到确切的密钥,或者,如果没有确切的密钥,则找到具有下一个更高值的密钥.如果列表的搜索太高(例如,最高键为100,但搜索105),则返回null.
// The structure of this class is unimportant. Just using
// it as an illustration.
public class CX
{
public int KEY;
public DateTime DT;
}
static CX getItem(int i, SortedList<int, CX> list)
{
var items =
(from kv in list
where kv.Key >= i
select kv.Key);
if (items.Any())
{
return list[items.Min()];
}
return null;
}
Run Code Online (Sandbox Code Playgroud)
给定50,000条记录的列表,调用getItem 500次需要大约一秒半.拨打50,000次电话需要2分钟.这种表现似乎很差.我的LINQ坏了吗?我期待太多了吗?我应该滚动自己的二元搜索功能吗?
我的.gitignore文件中有以下行:
var/www/docs/.backroom/billing_info/inv.pl
Run Code Online (Sandbox Code Playgroud)
但是当我输入"git status"时,我会被告知以下内容:
# modified: var/www/docs/.backroom/billing_info/inv.pl
Run Code Online (Sandbox Code Playgroud)
我不明白当我希望git忽略它时,如何将明确列为忽略模式的文件列为已修改.
没有以@开头的行!在我的.gitignore文件中
这是我的整个.gitignore文件供参考:http://pastebin.com/Jw445Qd7
我想删除实体框架中的多个记录,而不使用for循环或使用LINQ的任何其他循环.我们可以在SQL中做到的是有什么办法可以删除实体框架中的多个记录吗?
是否可以为Joomla 1.5中的访客禁用会话处理?
我不在前端使用用户系统,我认为不需要运行如下的查询:
站点将在重负载下使用APC或Memcache作为缓存系统,因此对我来说非常重要.
DELETE FROM jos_session WHERE ( time < '1274709357' )
SELECT * FROM jos_session WHERE session_id = '70c247cde8dcc4dad1ce111991772475'
UPDATE `jos_session` SET `time`='1274710257',`userid`='0',`usertype`='',`username`='',`gid`='0',`guest`='1',`client_id`='0',`data`='__default|a:8:{s:15:\"session.counter\";i:5;s:19:\"session.timer.start\";i:1274709740;s:18:\"session.timer.last\";i:1274709749;s:17:\"session.timer.now\";i:1274709754;s:22:\"session.client.browser\";s:88:\"Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.3) Gecko/20100401 Firefox/3.6.3\";s:8:\"registry\";O:9:\"JRegistry\":3:{s:17:\"_defaultNameSpace\";s:7:\"session\";s:9:\"_registry\";a:1:{s:7:\"session\";a:1:{s:4:\"data\";O:8:\"stdClass\":0:{}}}s:7:\"_errors\";a:0:{}}s:4:\"user\";O:5:\"JUser\":19:{s:2:\"id\";i:0;s:4:\"name\";N;s:8:\"username\";N;s:5:\"email\";N;s:8:\"password\";N;s:14:\"password_clear\";s:0:\"\";s:8:\"usertype\";N;s:5:\"block\";N;s:9:\"sendEmail\";i:0;s:3:\"gid\";i:0;s:12:\"registerDate\";N;s:13:\"lastvisitDate\";N;s:10:\"activation\";N;s:6:\"params\";N;s:3:\"aid\";i:0;s:5:\"guest\";i:1;s:7:\"_params\";O:10:\"JParameter\":7:{s:4:\"_raw\";s:0:\"\";s:4:\"_xml\";N;s:9:\"_elements\";a:0:{}s:12:\"_elementPath\";a:1:{i:0;s:74:\"C:\\xampp\\htdocs\\sites\\iv.mynet.com\\libraries\\joomla\\html\\parameter\\element\";}s:17:\"_defaultNameSpace\";s:8:\"_default\";s:9:\"_registry\";a:1:{s:8:\"_default\";a:1:{s:4:\"data\";O:8:\"stdClass\":0:{}}}s:7:\"_errors\";a:0:{}}s:9:\"_errorMsg\";N;s:7:\"_errors\";a:0:{}}s:13:\"session.token\";s:32:\"a2b19c7baf223ad5fd2d5503e18ed323\";}'
WHERE session_id='70c247cde8dcc4dad1ce111991772475'
Run Code Online (Sandbox Code Playgroud) 我有一个程序需要升级它打开到JET Version4.x的任何Access(Jet)数据库,如果它还不是那个版本.(这样可以使用SQL-92语法功能)
升级(相对)容易.调用JRO.JetEngine对象的CompactDatabase方法(如此处所述)应该可以解决问题,但在此之前,我需要确定是否需要升级.如何确定Jet OLEDB:现有数据库的引擎类型?这可以从开放的OleDBConnection确定吗?
注意:
我想调用一个每20秒传递一个参数的方法,例如public void ProcessPerson(IPerson person)
我一直在阅读不同的Timer选项,并想知道是否有人可以推荐最有效的方法来做到这一点?
另外,有没有办法保持参数强类型而不是使用对象然后必须转换为IPerson?
谢谢您的帮助.
我正在寻找一个ETL解决方案,我们可以手动创建配置,然后部署自动运行.这是基本的转变,它不需要特征沉重.关键点是免费或开源软件,可以根据具体需求进行定制.
实际上,这可以简化为一个可以在Linux服务器上运行的简单数据库迁移工具.基本上与上面相同,但除了重命名列之外,我们可能根本不需要验证/转换数据.
我忘了提到这将是非常跨平台的.我希望能够将它部署到服务器,以及在OSX和Windows上进行测试.
我在droppables列表中有一些draggables(每个droppable li可拖动1个).
当我将一个可拖动的可拖动移动到另一个可放置的droppable时,我想对接收的droppable进行diable,并启用它离开的droppable.
在firebug中,droppable类被删除 - 但是droppable的功能仍然存在.我有一种感觉,我需要以某种方式使用live(),但可以使用leg-up.
$(function() {
$(".user").draggable({
revert : true,
revertDuration : 200
});
$("li.droppable").droppable({
accept : ".user",
hoverClass : "drophover",
drop: function(event, ui) {
var position = this.getAttribute("id").replace("position_", ""),
user_id = ui.draggable.attr("id").replace("user_", "");
droppable = this
parent = ui.draggable.parent()
$.ajax({
url : "users/"+user_id+"",
type : "POST",
dataType: "JSON",
data : ({
"position" : position,
"_method" : "PUT"
}),
success : function() {
$(ui.draggable).parent().addClass("droppable");
$(ui.draggable).appendTo(droppable);
$(parent).removeClass("droppable");
}
});
}
});
});
Run Code Online (Sandbox Code Playgroud) 是否可以使用CoreProtocolPNames类的静态最终字段来定义bean,如下所示:
<bean id="httpParamBean" class="org.apache.http.params.HttpProtocolParamBean">
<constructor-arg ref="httpParams"/>
<property name="httpElementCharset" value="CoreProtocolPNames.HTTP_ELEMENT_CHARSET" />
<property name="version" value="CoreProtocolPNames.PROTOCOL_VERSION">
</bean>
Run Code Online (Sandbox Code Playgroud)
public interface CoreProtocolPNames {
public static final String PROTOCOL_VERSION = "http.protocol.version";
public static final String HTTP_ELEMENT_CHARSET = "http.protocol.element-charset";
}
Run Code Online (Sandbox Code Playgroud)
如果有可能,最好的方法是什么?
我正在使用matplotlib绘制一个混淆矩阵,其代码如下:
from numpy import *
import matplotlib.pyplot as plt
from pylab import *
conf_arr = [[33,2,0,0,0,0,0,0,0,1,3], [3,31,0,0,0,0,0,0,0,0,0], [0,4,41,0,0,0,0,0,0,0,1], [0,1,0,30,0,6,0,0,0,0,1], [0,0,0,0,38,10,0,0,0,0,0], [0,0,0,3,1,39,0,0,0,0,4], [0,2,2,0,4,1,31,0,0,0,2], [0,1,0,0,0,0,0,36,0,2,0], [0,0,0,0,0,0,1,5,37,5,1], [3,0,0,0,0,0,0,0,0,39,0], [0,0,0,0,0,0,0,0,0,0,38] ]
norm_conf = []
for i in conf_arr:
a = 0
tmp_arr = []
a = sum(i,0)
for j in i:
tmp_arr.append(float(j)/float(a))
norm_conf.append(tmp_arr)
plt.clf()
fig = plt.figure()
ax = fig.add_subplot(111)
res = ax.imshow(array(norm_conf), cmap=cm.jet, interpolation='nearest')
cb = fig.colorbar(res)
savefig("confmat.png", format="png")
Run Code Online (Sandbox Code Playgroud)
但我想在混淆矩阵中显示数字,就像这个图形(右图).我怎样才能conf_arr在图形上绘图?
c# ×3
linq ×2
.net ×1
automation ×1
c#-4.0 ×1
caching ×1
definition ×1
etl ×1
git ×1
javabeans ×1
javascript ×1
jet ×1
joomla ×1
joomla1.5 ×1
jquery ×1
linux ×1
matplotlib ×1
ms-access ×1
mysql ×1
performance ×1
python ×1
session ×1
sortedlist ×1
spring ×1