我有一个简单的行,我使用LINQ编辑.它有大约30列,包括主键数字序列.
当通过LINQ执行UPDATE时,UPDATE语句包括表的所有列(用于并发检查).
我想知道这是多么低效 - 如果不是无聊的话.由于主键上有索引,我假设该列用于初始行搜索,然后另外检查其他字段.我不会想到这将花费的时间可以忽略不计.
我问的原因是我在某些情况下看到这个UPDATE接管了一秒钟,这似乎不对.可能还有其他长期运行的事情正在发生,但这让我很好奇我是否应该担心.
我知道我可以将'UpdateCheck'设置为永远不会用于所有其他字段,但这很痛苦.
有没有办法关闭单个SubmitChanges()的'Update Check',或者我必须通过为每个字段更改'UpdateCheck'来实现.
任何意见,将不胜感激.
这是SQL更新:
exec sp_executesql N'UPDATE [dbo].[SiteVisit]
SET [TotalTimeOnSite] = @p12, [ContentActivatedTime] = @p13
WHERE ([SiteVisitId] = @p0) AND ([SiteUserId] IS NULL) AND ([ClientGUID] = @p1) AND ([ServerGUID] IS NULL) AND ([UserGUID] = @p2) AND ([SiteId] = @p3) AND ([EntryURL] = @p4) AND ([CampaignId] = @p5) AND ([Date] = @p6) AND ([Cookie] IS NULL) AND ([UserAgent] = @p7) AND ([Platform] IS NULL) AND ([Referer] = @p8) AND ([KnownRefererId] = @p9) AND ([FlashVersion] …Run Code Online (Sandbox Code Playgroud) 我对WCF服务代理有一个小问题,其中消息包含List<string>作为参数.
我在Visual Studio中使用"添加服务引用"来生成对我的服务的引用.
// portion of my web service message
public List<SubscribeInfo> Subscribe { get; set; }
public List<string> Unsubscribe { get; set; }
Run Code Online (Sandbox Code Playgroud)
这些是我MsgIn的一个Web方法的生成属性.你可以看到它ArrayOfString在我使用时使用List<string>,而另一个需要List<SubscribeInfo>- 它匹配我上面的原始C#对象.
[System.Runtime.Serialization.DataMemberAttribute(EmitDefaultValue=false)]
public System.Collections.Generic.List<DataAccess.MailingListWSReference.SubscribeInfo> Subscribe {
get {
return this.SubscribeField;
}
set {
if ((object.ReferenceEquals(this.SubscribeField, value) != true)) {
this.SubscribeField = value;
this.RaisePropertyChanged("Subscribe");
}
}
}
[System.Runtime.Serialization.DataMemberAttribute(EmitDefaultValue=false)]
publicDataAccess.MailingListWSReference.ArrayOfString Unsubscribe {
get {
return this.UnsubscribeField;
}
set {
if ((object.ReferenceEquals(this.UnsubscribeField, value) != true)) {
this.UnsubscribeField = …Run Code Online (Sandbox Code Playgroud) 我在页面中有一系列图像缩略图.它们是使用css sprites创建的.
<div class="galleryImg1"></div>
<div class="galleryImg2 featured"></div>
<div class="galleryImg3"></div>
Run Code Online (Sandbox Code Playgroud)
我最初使用id="galleryImg1"但改为使用,class="galleryImg1"因为图像可能出现在同一页面上的多个位置,我想避免重复的ID.
我有一个jQuery选择器将click事件附加到所有这些类.
$("[class^=galleryImg]").click(function() {
// how do i get 'galleryImg2' and '2' here?
}
Run Code Online (Sandbox Code Playgroud)
我想知道的是,是否有一种简单的方法可以找到以"galleryImg"开头的className.我是否必须使用正则表达式或者是否有"更聪明"的方式?
(是的,如果我使用的是#ID选择器,那么我可以说'this.id'但是如上所述,我不想使用ID,因为我想显示同一图像的多个副本.)
事实证明,使用嵌入式图像发送带有.NET的电子邮件非常容易.通过嵌入我的意思是实际将图像包含为MIME附件.
我只是想弄清楚我是否应该将图像作为大量邮件的资源(选择加入/现有客户)嵌入.或者我只会参考图像<img src>
嵌入图像的原因
未嵌入图像的原因(指向外部网站的IMG src属性)
我相信还有更多理由.
我最关心垃圾邮件相关问题.对任何人的输入都很好奇
我试图让[ CompressFilter ]使用甜甜圈缓存并遇到问题.
会发生什么是整个页面被缓存而不仅仅是甜甜圈.CompressFilter我使用的来源如下.我将其从原始源更改为使用OnResultExecuted而不是OnActionExecuting()因为我需要访问结果的类型以避免缓存某些ActionResult子类.
看看实际的MVC v1源代码OutputCacheAttribute看起来它也在使用OnResultExecuted(),但我不认为这个事实直接导致冲突.
我不太清楚替换缓存是如何工作的,以了解其行为方式.我认为值得注意的是,这并不会导致任何类型的损坏显示.它只是表现得没有甜甜圈!
它看起来像我将不得不使用某种IIs'插件'来处理缓存,我真的想避免这样做,但它看起来我也需要甜甜圈缓存.
我现在更感兴趣的是知道它为什么会产生这种效果,但如果可能的话,解决方案也会很棒.
public class CompressFilter : ActionFilterAttribute
{
public override void OnResultExecuted(ResultExecutedContext filterContext)
{
HttpRequestBase request = filterContext.HttpContext.Request;
// dont encode images!
if (filterContext.Result is ImageResult)
{
return;
}
string acceptEncoding = request.Headers["Accept-Encoding"];
if (string.IsNullOrEmpty(acceptEncoding)) return;
acceptEncoding = acceptEncoding.ToUpperInvariant();
HttpResponseBase response = filterContext.HttpContext.Response;
if (acceptEncoding.Contains("GZIP"))
{
response.AppendHeader("Content-encoding", "gzip");
response.Filter = new GZipStream(response.Filter, CompressionMode.Compress);
}
else if (acceptEncoding.Contains("DEFLATE"))
{
response.AppendHeader("Content-encoding", "deflate");
response.Filter …Run Code Online (Sandbox Code Playgroud) 我们都知道42是一切的答案,但对我来说这是一个有效的信用卡号码.
尝试在此jQuery Validation测试页面中输入"42"或"42176" ,然后单击"确定".
这是怎么回事?我认为这应该是事实上的验证库.即使微软现在正在使用它,但它认为'42'和'42176'是有效的信用卡号码?!它甚至没有进行长度检查.当然,我也不负责增加长度检查?它被称为'信用卡'验证器,而不是'luhn'验证器.
编辑:搭便车幽默 - 我将如何修补验证插件来检查长度.那很容易吗?
我有一个Facebook连接应用程序/画布IFrame应用程序,它具有Like粉丝页面的控件.
我想检测用户何时点击Like按钮才能显示其他信息(折扣优惠券代码).
我正在使用最新的Javascript API,但可以处理的事件似乎不包括社交窗口小部件控件的检测.该文档Like Plugin不显示任何事件.
但是我知道它绝对可能,因为如果我Like在页面上有两个按钮,如果我喜欢或不喜欢它们,它们会立即相互更新.
编辑:这是特别允许,要求别人成为促销的风扇:
4.2在促销规则或其他方面,您不会在Facebook上采取任何行动时进入促销活动,例如,更新状态,在个人资料或页面上发布,或上传照片.
但是,您可以在成为网页粉丝时进入促销活动.
编辑:如果你看到同样的问题(并且你习惯于在VS2010下没有看到这个)请在下面评论,所以我知道这不仅仅是我 - 但一定要检查韩的答案,以确保没有出现这些情况. ..
我一直在更新我的应用程序,以便在VS2012 RTM中使用.NET 4.5运行,并注意到我不太了解的内容,这是意外的绿色突出显示的语句(而不是黄色).

现在我很清楚这应该是什么意思,IDE甚至向我展示了一些解释工具提示.
这是当该线程从当前函数返回时执行的下一个语句
但是,对于这段代码,绝对没有任何异步或线程.在这个简单的例子中,我相信你会同意string.ToUpper()不会在另一个线程中关闭.我可以逐步完成代码.
没有其他事情发生,我在主线程上,你可以在这里看到.

我正在使用async和await与MVVM-Light(上面的方法是RelayCommand的结果),但我仍然获得这种行为,即使代码路径是直接关闭的事件处理程序等 PreviewKeyDown.

如果我创建一个新的应用程序,我不能复制它 - 颜色是预期的黄色 - 即使使用await.
有人知道吗?它开始让我发疯!
我有这个变量命名records,
现在我想在angular2/typescript中检查它是否是一个数组?
在AngularJS中,我曾经做过以下事情:
ng-if="selectedCol.data && !isArray(selectedCol.data)"
Run Code Online (Sandbox Code Playgroud)
但是当我想要做的时候,它不能正常工作;
*ngIf="selectedCol.model.data && !Array.isArray(selectedCol.model.data)"
Run Code Online (Sandbox Code Playgroud)
它给我下面的错误:
TypeError:无法读取未定义任何输入的属性'isArray'吗?
{ [key: string]: V }?我正在尝试创建一个 Typescript 函数来生成一个具有动态键的对象,该动态键的名称在函数签名中提供,而返回类型不会扩展为{ [key: string]: V }.
所以我想打电话:
createObject('template', { items: [1, 2, 3] })
并返回一个{ template: { items: [1, 2, 3] } }不仅仅是带有字符串键的对象的对象。
在你告诉我这是不可能之前,让我们先制作一条彩虹:
type Color = 'red' | 'orange' | 'yellow';
const color1: Color = 'red';
const color2: Color = 'orange';
Run Code Online (Sandbox Code Playgroud)
在彩虹对象上创建两个动态属性:
const rainbow = {
[color1]: { description: 'First color in rainbow' },
[color2]: { description: 'Second color in rainbow' }
};
Run Code Online (Sandbox Code Playgroud)
现在让我们看看我们创建的 …
jquery ×2
typescript ×2
angular ×1
asp.net-mvc ×1
caching ×1
credit-card ×1
email ×1
facebook ×1
javascript ×1
linq ×1
mapped-types ×1
sql-server ×1
updatecheck ×1
wcf ×1
xfbml ×1