问题列表 - 第24103页

使用扩展方法重写LINQ语句的优雅方法是什么?

我遵循LINQ语句,我想使用扩展方法重写它.

from x in e
from y in e
from z in e
select new { x, z }
Run Code Online (Sandbox Code Playgroud)

一种可能的解决方案是

e.Join(e, x => 42, y => 42, (x, y) => new { x, y })
  Join(e, _ => 42, z => 42, (_, z) => new { _.x, z }); 
Run Code Online (Sandbox Code Playgroud)

然而,这一切都很优雅.

你知道如何提高第二表达的美感吗?

.net c# linq

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

输入Casting Exception

为什么声明

(int)"84"
Run Code Online (Sandbox Code Playgroud)

抛出异常并且

Convert.ToInt32("84")
Run Code Online (Sandbox Code Playgroud)

不抛出异常?

c#

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

python:什么是以灵活的方式处理深层嵌套数据的有效技术?

我的问题不是关于特定的代码片段,而是更一般的,所以请耐心等待:

我应该如何组织我正在分析的数据,以及我应该使用哪些工具来管理它?

我正在使用python和numpy来分析数据.因为python文档表明字典在python中非常优化,并且由于数据本身非常结构化的事实,我将它存储在深度嵌套的字典中.

这是字典的框架:层次结构中的位置定义元素的性质,每个新行定义先前级别中键的内容:

[AS091209M02] [AS091209M01] [AS090901M06] ... 
[100113] [100211] [100128] [100121] 
[R16] [R17] [R03] [R15] [R05] [R04] [R07] ... 
[1263399103] ... 
[ImageSize] [FilePath] [Trials] [Depth] [Frames] [Responses] ... 
[N01] [N04] ... 
[Sequential] [Randomized] 
[Ch1] [Ch2]
Run Code Online (Sandbox Code Playgroud)

编辑:为了更好地解释我的数据集:

[individual] ex: [AS091209M02]
[imaging session (date string)] ex: [100113]
[Region imaged] ex: [R16]
[timestamp of file] ex [1263399103]  
[properties of file] ex: [Responses]
[regions of interest in image ] ex [N01]
[format of data] ex [Sequential]
[channel of acquisition: this key indexes an …
Run Code Online (Sandbox Code Playgroud)

python dictionary nested

9
推荐指数
1
解决办法
3911
查看次数

当用户在其Web浏览器中按停止时会发生什么?

如果调用的页面需要大量处理并且用户在结束前单击停止,浏览器是否只是在客户端停止请求?

或者是发送到服务器的"停止"消息,即处理被取消了吗?

browser webserver httpwebrequest

17
推荐指数
2
解决办法
641
查看次数

decimal.TryParse()删除前导"1"

简短甜美的版本:

在大约一百台测试机器中的一台机器上,decimal.TryParse()将"1.01"转换为0.01


好吧,这听起来很疯狂,但请耐心等待......

我们有一个通过JSON与Web服务通信的客户端应用程序,该服务返回一个十进制值作为字符串,因此我们将它作为字符串存储在我们的模型对象中:

[DataMember(Name = "value")]
public string Value { get; set; }
Run Code Online (Sandbox Code Playgroud)

当我们在屏幕上显示该值时,它被格式化为特定的小数位数.所以我们使用的过程是字符串 - >十进制,然后十进制 - >字符串.

该应用程序目前正在进行最终测试,并在100多台机器上运行,这一切都运行良好.但是在台机器上如果十进制值的前导'1'则将其替换为零.我在代码中添加了简单的日志记录,因此它看起来像这样:

Log("Original string value: {0}", value);
decimal val;
if (decimal.TryParse(value, out val))
{
    Log("Parsed decimal value: {0}", val);
    string output = val.ToString(format, CultureInfo.InvariantCulture.NumberFormat);
    Log("Formatted string value: {0}", output);
    return output;
}
Run Code Online (Sandbox Code Playgroud)

在我的机器上 - 任何其他客户端机器 - 日志文件输出是:

  • 原始字符串值:1.010000
  • 经验证的十进制值:1.010000
  • 格式化字符串值:1.01

在有缺陷的机器上输出是:

  • 原始字符串值:1.010000
  • 经解析的十进制值:0.010000
  • 格式化字符串值:0.01

所以看起来decimal.TryParse方法有问题.

我们尝试过的事情:

  • 卸载并重新安装客户端应用程序
  • 卸载并重新安装.net 3.5 sp1
  • 将有缺陷的机器的数字区域设置(使用英语(英国))与工作机器的区域设置进行比较 - 没有差异.

有没有人见过这样的东西或有任何建议?我很快就没有想法......


当我输入这个时,会有更多信息传入:将字符串值"10000"传递给Convert.ToInt32()会返回0,所以这似乎也会丢掉前导1.


基于评论的进一步测试:

  • 1.01 - > 0.01 …

.net

15
推荐指数
1
解决办法
969
查看次数

编写的现代和旧编译器是什么?

作为一个编译器,除了解释器之外,只需要翻译输入而不是运行它本身的性能应该不像解释器那样有问题.因此,你不会写一个解释器,比方说Ruby或PHP因为它太慢了.

然而,编译器呢?

如果你用脚本语言编写编译器甚至可以快速开发,你可以通过halv来削减源代码和初始开发时间,至少我是这么认为的.

可以肯定的是:使用脚本语言我的意思是具有典型功能的解释型语言,使程序员编程更快,更容易,更愉快,通常至少.示例:PHP,Ruby,Python,也许是JavaScript,虽然这可能是编译器的奇怪选择

  • 什么是通常编写的编译器?正如我想你会用C,C++甚至汇编程序这样的低级别回复,为什么呢?

  • 是否有用脚本语言编写的编译器?

  • 使用低级或高级编程语言进行编译器编写有哪些(dis)优势?

compiler-construction scripting-language compiler-theory

3
推荐指数
1
解决办法
1113
查看次数

如何创建JSON数组?

嗨,我想创建一个JSON数组.

我尝试过使用:

JSONArray jArray = new JSONArray();
  while(itr.hasNext()){
    int objId = itr.next();
jArray.put(objId, odao.getObjectName(objId));
  }
results = jArray.toString();
Run Code Online (Sandbox Code Playgroud)

注意:odao.getObjectName(objId)根据名为objId的"对象ID"检索名称.

但是我得到了一个非常有趣的数组

[null,null,null,"SomeValue",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,"AnotherValue",null,null,null,null,null,null,null,null,null,null,"SomethingElse","AnotherOne","LastOne"]
Run Code Online (Sandbox Code Playgroud)

使用时检索它时只显示"LastOne" jQuery.

阵列看起来像

{[ "3": "someValue中"],[ "40": "AnotherValue"],[ "23": "SomethingElse"],[ "9": "AnotherOne"],[ "1": "LastOne"] }

由于某种原因,我得到的数字根本没有出现.

arrays jquery json

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

使用Android意图发送HTML邮件

我已经生成了一个HTML代码(带有<html><body></body></html>标签)作为String.现在我想将这个HTML代码作为HTML发送到邮件.我的代码如下.

Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType("text/html");
intent.putExtra(Intent.EXTRA_EMAIL, new String[]{"me@mydomain.com"});
intent.putExtra(Intent.EXTRA_SUBJECT, "I would like to buy the following");
intent.putExtra(Intent.EXTRA_TEXT, purchaseOrder());
startActivity(Intent.createChooser(intent, "sending mail"));
Run Code Online (Sandbox Code Playgroud)

其中的purchaseOrder()方法是将具有完整HTML代码的字符串传递给我.但是,虽然GMail客户端在我的Nexus1上打开,但它包含所有HTML标记的String,而不是实际的HTML视图.我试过以下但是错了.GMail坠毁了.

intent.putExtra(Intent.EXTRA_STREAM, purchaseOrder());
Run Code Online (Sandbox Code Playgroud)

html email android android-intent

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

如何在JQuery中使用Sortable水平排序div

我希望在容器div中水平排序我的div.
我在JQuery网站上找到了一个例子,但这是垂直排序.我希望它是水平的.

我想做它排序#sortable <div>.

请您指导我如何以水平方式转换此垂直排序.

CSS

<style type="text/css">
    #draggable1 { width: 150px; height: 35px; padding: 0.5em; }
    #draggable2 { width: 150px; height: 35px; padding: 0.5em; }
    #draggable3 { width: 150px; height: 35px; padding: 0.5em; }

    #sortable { width: 700px; height: 35px; padding: 0.5em; }
</style>
Run Code Online (Sandbox Code Playgroud)

JavaScript的

<script type="text/javascript">
    $(function() {  
        $("#sortable").sortable({
            revert: true
        }); 
    });
</script>
Run Code Online (Sandbox Code Playgroud)

HTML

<div class="demo">
    <div id="sortable" class="ui-state-default">
        <div id = "draggable1" class="ui-state-default">Home</div>
        <div id = "draggable2" class="ui-state-default">Contact Us</div>
        <div id = …
Run Code Online (Sandbox Code Playgroud)

jquery jquery-ui jquery-ui-sortable

25
推荐指数
2
解决办法
4万
查看次数

截断文本以适合表格单元格而不使用css或jquery进行换行

我希望表中某列中的文本不会换行,而是要截断,以使其适合表格单元格的当前大小.我不希望表格单元格改变大小,因为我需要表格正好100%是容器的宽度.

这是因为带有100%宽度的表位于一个div溢出的位置:auto(它实际上位于jQuery UI.Layout面板中).

我试过了两个overflow: hidden,文字仍然包裹着.我试过了white-space: nowrap,但它拉伸了桌子,100%并添加了一个水平滚动条.

div.container {
  position: absolute;
  overflow: auto;
  /* user can slide resize bars to change the width & height */
  width: 600px;  
  height: 300px;
}
table { width: 100% }
td.nowrap {
  overflow: hidden;
  white-space: nowrap;
}
<div class="container">
  <table>
    <tr>
      <td>From</td>
      <td>Subject</td>
      <td>Date</td>
    </tr>
    <tr>
      <td>Bob Smith</td>
      <td class="nowrap">
        <strong>Message subject</strong>
        <span>This is a preview of the message body …
Run Code Online (Sandbox Code Playgroud)

css jquery

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