我在数据集中有50万条记录,其中50,000条已更新.现在我需要将更新的记录提交回SQL Server 2005数据库.
考虑到这样的更新可能很频繁(尽管并发性不是问题而是性能),最好和最有效的方法是什么?
如何从模型实例中获取模型名称.对于前者
$ model = new State;
这里,State是model $ model是State model instance.
我想得到模型名称,即来自$ model的状态,即模型实例.
我有一个IList.对象PersonDetails由人名,地址和电话号码组成.该列表包含1000多人的详细信息.我想在每页显示50个PersonDetails.有没有办法从列表中只选择50个元素,并返回它们.例如.
myList.select(1,50)
myList.select(51, 100)
Run Code Online (Sandbox Code Playgroud)
我只能通过使用选择前50.myList.Take(50);
整个列表都在wcf服务中,我希望一次只能获得50个元素.
由于我是c#的新手,想了解c#中的接口和代理,它们之间的区别以及这两种情况都要使用.请不要提供任何链接,我想用简单的话来解释.
如果用户在创建帐户时输入的用户名和密码是安全的,或者根据输入字段右侧的长度(对于我的情况为5),通过显示不同的颜色,即红色较短,我想要有效,否则为绿色.我怎么能用javascript做到这一点?
我在这样的页面的代码隐藏中创建一个文本框:
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
TextBox test = new TextBox();
test.SkinkId = "MySkin";
placeHolder.Controls.Add(test);
}
Run Code Online (Sandbox Code Playgroud)
在我的皮肤文件中我有这个:
<asp:TextBox
runat="server"
SkinId = "MySkin"
Width="400"
/>
Run Code Online (Sandbox Code Playgroud)
为什么皮肤没有应用于控件.如果我在我的aspx页面中声明控件它可以正常工作,但如果我尝试以编程方式执行它不起作用.
有一些代码通过调用GetBuffer()将数据直接写入MemoryStream对象的数据缓冲区.它还适当地使用和更新Position和SetLength()属性.
此代码在99.9999%的时间内正常工作.从字面上看.只有每隔这么多的100,000次迭代才能实现.具体问题是MemoryStream的Position属性突然返回零而不是适当的值.
但是,添加了检查0的代码并抛出异常,其中包括在单独的方法中记录MemoryStream属性(如位置和长度).那些返回正确的值.在同一方法中进一步添加日志记录表明,当出现这种罕见情况时,Position在此特定方法中仅为零.
好的.显然,这必须是一个线程问题.而且很可能是编译器优化问题.
但是,这个软件的本质是它由调度程序的"任务"组织,因此几个实际的O/S线程中的任何一个都可以在任何给定时间运行此代码 - 但一次不得超过一个.
所以我的猜测通常会发生同样的线程不断用于此方法,然后在极少数情况下使用不同的线程.(只需编写想法,通过捕获和比较线程ID来测试这个理论.)
然后由于编译器优化,不同的线程永远不会得到正确的值.它得到一个"陈旧"的价值.
通常在这种情况下,我会将"volatile"关键字应用于相关变量,以查看是否可以修复它.但在这种情况下,变量位于MemoryStream对象中.
有没有人有任何其他想法?或者这是否意味着我们必须实现自己的MemoryStream对象?
真诚的,韦恩
编辑:只运行一个测试,计算此方法的调用总数,并计算ManagedThreadId与上次调用的次数不同的次数.它几乎完全是50%的时间切换线程 - 在它们之间交替.所以我上面的理论几乎肯定是错的,或者错误会更频繁地发生.
编辑:这个错误很少发生,它需要将近一个星期的运行没有错误之前感到有任何信心,它真的消失了.相反,最好运行实验来确切地确定问题的本质.
编辑:当前锁定是通过使用MemoryStream的5种方法中的每一种中的lock()语句来处理的.
自.net 4.0推出以来,热门话题一直是云计算.但从.net技术的角度来看,对它的讨论却很少.还有真正值得投资还是我们有足够的现有技术来处理云计算提供的东西?
你能描述一下吗,一个例子会很有帮助!
提前致谢.
这有点晚了,但我对自己没有提出更优雅的东西感到失望.任何人都有更好的方法来做到这一点......
当您将OAuth代码传递给Facebook时,它会使用包含值access_token和expires值的查询字符串进行响应.
access_token=121843224510409|2.V_ei_d_rbJt5iS9Jfjk8_A__.3600.1273741200-569255561|TxQrqFKhiXm40VXVE1OBUtZc3Ks.&expires=4554
Run Code Online (Sandbox Code Playgroud)
虽然如果您请求脱机访问权限,则没有expires,字符串如下所示:
access_token=121843224510409|2.V_ei_d_rbJt5iS9Jfjk8_A__.3600.1273741200-569255561|TxQrqFKhiXm40VXVE1OBUtZc3Ks.
Run Code Online (Sandbox Code Playgroud)
我试图编写一个足以满足任何一个条件的正则表达式.没有骰子.所以我最终得到了一些非常丑陋的Ruby:
s = s.split("=")
@oauth = {}
if s.length == 3
@oauth[:access_token] = s[1][0, s[1].length - 8]
@oauth[:expires] = s[2]
else
@oauth[:access_token] = s[1]
end
Run Code Online (Sandbox Code Playgroud)
我知道必须有更好的方法!