小编use*_*014的帖子

使用LINQ获取IEnumerable中的上一个和下一个项目

我有一个自定义类型的IEnumerable.(我是从SelectMany那里得到的)

我在IEnumerable中也有一个项目(myItem),我希望IEnumerable中的上一个和下一个项目.

目前,我正在做这样的想法:

var previousItem = myIEnumerable.Reverse().SkipWhile( 
    i => i.UniqueObjectID != myItem.UniqueObjectID).Skip(1).FirstOrDefault();
Run Code Online (Sandbox Code Playgroud)

我可以通过简单地省略来获得下一个项目.Reverse.

或者,我可以:

int index = myIEnumerable.ToList().FindIndex( 
    i => i.UniqueObjectID == myItem.UniqueObjectID)
Run Code Online (Sandbox Code Playgroud)

然后.ElementAt(index +/- 1)用来获取上一个或下一个项目.

  1. 哪两个选项更好?
  2. 有没有更好的选择?

"更好"包括性能(内存和速度)和可读性的组合; 可读性是我的主要关注点.

c# linq ienumerable

32
推荐指数
3
解决办法
4万
查看次数

c#Regex仅用于数字和短划线

我在我的c#代码中有以下内容 - 我喜欢它做的是检查表达式是否有数字或破折号但没有别的.如果我输入字母K以及短划线或数字,它仍然接受它.我怎么说快递是数字还是短划线:

     Match match = Regex.Match(input, @"[0-9-]");
Run Code Online (Sandbox Code Playgroud)

请注意,输入是我传递给评估的文本.

c# regex

18
推荐指数
3
解决办法
5万
查看次数

14
推荐指数
2
解决办法
7万
查看次数

自定义标题,摘要在facebook sharer中不起作用

我在我的网站上有链接工作正常,但我注意到这些现在不起作用.

例如:http://www.facebook.com/sharer/sharer.php? s = 100&p [ url] = http://www.otlcampaign.org/blog/2013/02/04/inconvenient-truth-education-reform&p [图片] [0] = http://www.otlcampaign.org/sites/default/files/journey-for-justice-mlk-memorial.jpg&p [title] = +不方便+真相+ +教育+ '改革' !&p [摘要] =最近+事件+拥有+显示+如何以市场为导向+教育+政策+欺骗性+标记+为+%22reform,%22 +的+透出+自己+真正+破坏性+效果+上+该街道+ +和+ +中的+走廊+政府+的:

这个链接工作正常,但它没有采取自定义标题,摘要等.请帮我解决这个问题.

我没有使用元标记,因为有很多共享按钮具有不同的标题,描述,图像网址.

我已经浏览了这个网站上的现有问题,但这些解决方案很有用.例如Facebook Share不显示我的描述或我的缩略图 请提出任何建议.

facebook facebook-sharer

8
推荐指数
1
解决办法
1674
查看次数

C#Html Agility Pack(SelectSingleNode)

我正在尝试解析这个字段,但无法让它工作.目前的尝试:

var name = doc.DocumentNode.SelectSingleNode("//*[@id='my_name']").InnerHtml;


<h1 class="bla" id="my_name">namehere</h1>
Run Code Online (Sandbox Code Playgroud)

错误:对象引用未设置为对象的实例.

感谢任何帮助.

@John - 我可以保证HTML已正确加载.我正在尝试阅读我的Facebook名称以用于学习目的.这是Firebug插件的截图.我使用的版本是1.4.0.

http://i54.tinypic.com/kn3wo.jpg

我想问题是profile_name是一个子节点或什么的,这就是为什么我无法读取它?

html c# parsing html-agility-pack

7
推荐指数
2
解决办法
3万
查看次数

CSS3风格问题

我创建了一个标签,但在右侧的箭头后面有白色背景

.tags {
  list-style: none;
  margin: 0;
  overflow: hidden; 
  padding: 0;
 }
Run Code Online (Sandbox Code Playgroud)

http://jsfiddle.net/eR8Ye/5/

如何删除标签右侧的白色背景?此标记的背景是渐变样式.

html css

7
推荐指数
1
解决办法
118
查看次数

HtmlAgilityPack忽略XPath案例

我用的时候

SelectSingleNode("//meta[@name='keywords']")
Run Code Online (Sandbox Code Playgroud)

它不起作用,但当我使用原始文档中使用的相同案例时,它工作得很好:

SelectSingleNode("//meta[@name='Keywords']")
Run Code Online (Sandbox Code Playgroud)

所以问题是如何设置案例忽略?

c# xpath case-sensitive .net-2.0 html-agility-pack

6
推荐指数
2
解决办法
3115
查看次数

允许内容编辑器Web部件

使用SharePoint 2007,如何在编辑页面模式下允许将CEWP添加到"添加Web部件"对话框的选择菜单中?目前,我只能添加公告,日历,链接,共享文档,任务,但我无法添加CEWP.我可以完全访问该网站.

sharepoint sharepoint-2007 cewp

5
推荐指数
1
解决办法
2万
查看次数

从字符串名称返回FontStyle

我想写一个函数,它将返回FontStyle并将字符串作为参数

FontStyle f = function ("Italic"); // FontStyles.Italic
Run Code Online (Sandbox Code Playgroud)

我不想写Switch case或if else语句来做同样的事情.

它可以用不区分大小写的字符串吗?

FontStyle f = function ("italic");
FontStyle f = function ("itAlic"); 
Run Code Online (Sandbox Code Playgroud)

应该返回相同.

c# fonts parsing

5
推荐指数
2
解决办法
5818
查看次数

C#使用HTML Agility Pack解析隐藏字段

我需要为朋友网站编写一个解析隐藏字段的应用程序.我已经下载了Html Agility Pack库,但我有点困惑,因为没有任何实例.HTML字段如下所示:

<input type = "hidden" autocomplete="off" value="randomvalue" name="foo">
Run Code Online (Sandbox Code Playgroud)

我如何从这个领域获得价值?

html c# parsing hidden-fields html-agility-pack

4
推荐指数
1
解决办法
4018
查看次数

在页面上的多个输入上使用 tokeninput jquery 插件

我正在使用来自loopj.com的jquery tokeninput插件这是我的JS文件:

\n\n
$(document).ready(function() {\n\n    // Token input plugin:\n\n    $("#issuer").tokenInput("/issuers.json",{\n        crossDomain: false,\n        theme: "facebook",\n        prePopulate: $("#issuer").data("pre"),\n        preventDuplicates: true\n    });\n\n    $("#shareholder").tokenInput("/shareholders.json",{\n        crossDomain: false,\n        theme: "facebook",\n        prePopulate: $("#shareholder").data("pre"),\n        preventDuplicates: true\n    });\n\n});\n
Run Code Online (Sandbox Code Playgroud)\n\n

这是我的标记:

\n\n
<form method="post" action="/certificates" accept-charset="UTF-8">\n<input type="hidden" value="\xe2\x9c\x93" name="utf8">\n<input type="hidden" value="fSO/GJxIGEHLCb/zmd1B7qTwUYnGx5yyIxWTkEk/ies=" name="authenticity_token">\\\n\n  <div class="field">\n    <label for="issuer">Issuer</label><br>\n    <input type="text" size="30" name="certificate[issuer]" id="issuer" data-pre="[null]">\n  </div>\n\n <div class="field">\n    <label for="shareholder">Shareholder</label><br>\n    <input type="text" size="30" name="certificate[shareholder]" id="shareholder" data-pre="[null]">\n  </div>\n</form>\n
Run Code Online (Sandbox Code Playgroud)\n\n

我的 tokenize 插件可以工作#issuer,但不能工作,如果我使用顶部的选择器#shareholder移动 jQuery 代码,则令牌输入代码适用于,但不再适用于另一个。我怎样才能让它对他们俩都起作用?#shareholder#shareholder

\n\n

另外,如果我在编辑模式下具有相同的表单和相同的标记 …

jquery ruby-on-rails input token jquery-tokeninput

2
推荐指数
1
解决办法
2492
查看次数