在搜索引擎优化中,有一些标记的技术需要不惜一切代价避免.这些都是以前完全可以接受但现在禁忌的技术.第1名:Spammy来宾博客:用客户评论打开一个页面不再是一个好处.2号:优化锚:这些已经适得其反,而是使用安全锚.3号:低质量链接:网站通常会充斥着超链接,将您带到低质量的问答网站,不要这样做.4号:关键词重要内容:尝试并避免使用太多这些内容,使用更长时间写得更好的部分.5号:链接回过度使用:反向链接可能是重定向到您网站的好方法,但过度饱和会让人感到困惑
我在这里讨论的问题基本相同:http://khason.net/blog/dependency-property-getters-and-setters-in-multithreaded-environment/
public static readonly DependencyProperty MyPropertyProperty =
DependencyProperty.RegisterAttached("MyProperty", typeof(bool),
typeof(MyObject), new PropertyMetadata(new PropertyChangedCallback(OnMyPropertyChanged)));
public static bool GetMyProperty(DependencyObject obj)
{
return (bool)obj.GetValue(MyPropertyProperty); <<<<<
}
public static void SetMyProperty(DependencyObject obj, bool value)
{
obj.SetValue(MyPropertyProperty, value);
}
Run Code Online (Sandbox Code Playgroud)
如果标记为"<<<<<"的行从后台线程调用,Silverlight会抛出InvalidOperationException,我的应用程序可能会死锁.
遗憾的是,博客文章中的解决方案无效,因为Dispatcher类的Silverlight版本隐藏了同步的Invoke方法 - 只有BeginInvoke被标记为public.
silverlight multithreading asynchronous dependency-properties
我正在varchar
从数据库中提取值,并希望设置string
我将它们分配为"",如果它们是null
.我现在这样做:
if (string.IsNullOrEmpty(planRec.approved_by) == true)
this.approved_by = "";
else
this.approved_by = planRec.approved_by.toString();
Run Code Online (Sandbox Code Playgroud)
似乎应该有一种方法可以在一行中执行以下操作:
this.approved_by = "" || planRec.approved_by.toString();
Run Code Online (Sandbox Code Playgroud)
但是我找不到最佳方法来做到这一点.有更好的方法还是我最好的方法呢?
我有一个这样的课:
public class Account
{
public virtual int Id { get; private set; }
public virtual string Username { get; set; }
[EditorBrowsable( EditorBrowsableState.Never )]
public virtual string Password { get; private set; }
public void SetPassword( string password ){ ... }
public bool CheckPassword( string password ) { ... }
}
Run Code Online (Sandbox Code Playgroud)
我已经这样设置了,因为我不希望在Password
使用该Account
类型的代码中直接使用该属性.帐户地图如下所示:
public class AccountMap : ClassMap<Account>
{
public AccountMap()
{
Id( x => x.Id );
Map( x => x.Username );
Map( x => x.Password …
Run Code Online (Sandbox Code Playgroud) 编程中堆栈溢出和缓冲区溢出有什么不同?
好.我确定它确实下载了扩展名为.xml的XML文件,但是我想知道这里的代码中缺少什么导致下载文件中缺少.xml扩展名.
注意:这适用于IE 6+(没有尝试基于WebKit的浏览器或Opera)
private void GenerateXmlAttachment(string xmlInStringFormat, string fileName)
{
// Where fileName = "someFile.xml"
HttpResponse response = HttpContext.Current.Response;
response.Clear();
response.Charset = string.Empty;
response.ContentEncoding = Encoding.Default;
response.AddHeader("Content-Disposition", "attachment;filename=" + fileName);
response.AddHeader("Content-Length", xmlInStringFormat.Length.ToString());
response.ContentType = "text/xml";
response.Write(xmlInStringFormat);
response.Flush();
response.End();
}
Run Code Online (Sandbox Code Playgroud)
想法有人吗?
我正在开发一个iPhone应用程序,它将使用长轮询通过HTTP将服务器的事件通知发送到客户端.在服务器上打开连接后,我发送了一小部分代表事件的JSON.我发现-[NSURLConnectionDelegate connection:didReceiveData]
直到我关闭连接后才会调用,无论我在创建时使用的缓存设置如何NSURLRequest
.我已经验证了服务器端正在按预期工作 - 第一个JSON事件将立即发送,后续事件将在发生时通过线路发送.有没有办法在NSURLConnection
发生这些事件时使用它们,或者我需要转而使用CFSocket API?
我正在开始集成CocoaAsyncSocket,但是NSURLConnection
如果可能的话,我更愿意继续使用它,因为它更适合我基于REST/JSON的其余Web服务结构.
另一章来自"我和其他高级开发者之间的争论"系列:P
我的立场是,在进行Web开发时,首先要编写浏览器代码以遵守W3C Web标准,即使Internet Exploder具有更大的市场份额(根据谁在进行跟踪,任何地方在51%到79%之间) .我的理由是:
标准被锁定,所有浏览器开发人员都在朝着所有设定标准的最低100%无错误支持迈进.因此,应该围绕Firefox/Chrome/Safari编写和测试代码,这些代码比IE8更接近正确的标准支持,然后应该在IE中使用条件标记来解决它的错误.尤其如此,因为您可以使用条件标记来解决IE错误,但如果您尝试反向编写代码,则编写黑客攻击强制Firefox/Safari /等正确显示已编码的HTML/CSS会更加困难.
如果您为标准设计,那么您将面向未来,因为所有浏览器都瞄准同一个地方,标准方面,这意味着您不会成为每次必须修复应用程序的人群之一.新的浏览器版本更接近于Web标准,从而使您的一些初始黑客现在打破了布局.
为了支持更大的市场份额而编写一些破碎的东西,然后为了较小的市场份额"不破",如果你有时间,似乎是一种粗心的方式来接近一份工作,并暗示你认为20%的市场份额是微不足道的,我认为离真相很远.
我的合作开发者辩称:
不同的浏览器公司喜欢用他们自己的切线,并且不关心标准,所以尝试编写标准是浪费时间.
只要页面大致以可用的方式显示在这些浏览器中,编码以支持少数约20%的市场份额是不值得的.
浏览器是浏览器,是浏览器.它只是渲染文本的视口,我不应该担心看起来完全正确的事情.
无论如何,当他更喜欢IE8时,必须在Firefox中进行开发是一件痛苦的事.
我是负责人,当然我可以说"这是它的方式",但我讨厌只是一个纳粹并说"我的方式或高速公路"; 我认为最好让其他人理解为什么我们以某种方式做某事以便我们在进行时达成一致,因此我们所遵循的惯例会受到关注,因为他们背后的理由受到赞赏而不是不情愿紧随其后.
我可以参考这个论点吗?
我在ADO.NET Entity Framework上有一个简单的LINQ查询,如下所示
var result =
from itemA in TableA
join itemB in TableB on itemA.ID = itemB.ID
select ??????
Run Code Online (Sandbox Code Playgroud)
我试图选择一切从itemA
并itemB
没有指定所有的TableA
和TableB
.
什么想法?
什么被认为是更好的事件定义样式:
public event Action<object, double> OnNumberChanged;
Run Code Online (Sandbox Code Playgroud)
要么
public delegate void DNumberChanged(object sender, double number);
public event DNumberChanged OnNumberChanged;
Run Code Online (Sandbox Code Playgroud)
第一个需要较少的输入,但是委托者给出了参数的名称.当我打字时,我认为2号是赢家,但我可能错了.
编辑:一个不同的(第三)方法是胜利者.参见下文.
c# ×4
.net ×2
ado.net ×1
asp.net ×1
asynchronous ×1
coding-style ×1
comet ×1
firefox ×1
http-headers ×1
iphone ×1
linq ×1
mime-types ×1
null ×1
objective-c ×1
seo ×1
silverlight ×1
standards ×1
w3c ×1