问题列表 - 第7233页

软件开发的难点是什么?

软件开发的难点部分对最终产品/产量有重大影响?如何?

我所期望的是,我应该在哪些方面(比如技术,要求......等)更专注于开发更好的应用程序.

language-agnostic

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

如何模拟客户端和服务器之间的套接字断开连接?

我已经实现了一种"心跳解决方案",我希望看到在实际情况下网络"发生故障"时会发生什么,特别是如果套接字上没有流量时会发生这种情况.

问题: - 我只有一台电脑; - 我在windows/java上;

我想只需拔掉网线/停用网卡就不会影响这两个进程,因为它们在同一个盒子上运行; 是否有程序化解决方案?一种强制关闭套接字的方法?

java sockets windows tcp system

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

如何将非通用IList转换为IList <T>?

我有一个想要的课程IList<T>,但我有一个Systems.Collection.IList来自NHibernate的人.

我想创建一个将其转换为的方法IList<T>.我该怎么做呢?

c#

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

ASP.NET MVC和LINQ一般问题

我以前曾就这个话题问了几个问题.在我们能够在工作中实现MVC或LINQ之前,我们需要解决一些问题.

ASP.NET MVC中的多个记录集

使用的MVC的唯一示例仅返回单个结果集.当使用存储过程时,可以检索多个记录集,并且我们倾向于使用存储过程的全部原因有两个原因(我相信很多人也都知道).首先,如果我们需要传递参数,其次,如果我们想要返回多个数据表.在ASP.NET的MVC架构中,这怎么可能?

本教程中,我们将了解如何检索数据.但是它使用ViewData.Model了表示单个结果集的内容,它没有解释如果返回多个结果集会发生什么,或者如何获取它们.

强类型存储过程输出

此外,ASP.NET网站上使用LINQ进行强类型输出解析的示例是通过使用*.dbml格式实现的,该格式是表模式的镜像,允许使用LINQ查找字段.大.但是,如果您的输出是从不直接映射到视图或表的存储过程自定义的,会发生什么?我们如何从这些存储过程中解析列名?

在上一节中,我描述了本教程,但这也只显示了如何仅为表创建LINQ to SQL,而不是从sproc创建自定义输出.

LINQ列查找

在工作中,我们运行一个宏,它将一堆类导出到我们的App_Code文件夹,因此存储过程参数是预定义的.这样做,所以我们不必调用DeriveParameters,它包含对数据库的额外调用.我们不希望这种情况发生,因为它有很多流量.如果我们使用LINQ,如何解析列数据类型?每当我们定义参数以找出参数的数据类型和名称时,是否有对数据库的调用?事情发生了变化吗?它是否仍然每次都调用DeriveParameters?这些缓存在某个地方吗?

DBML格式

*.dbml文件是否应包含数据库中的所有表?我们有大约15个数据库,每个数据库中有许多表.

每个输出的视图

还有一点要补充这篇文章.而不是手动创建dbml类最好将数据表示为视图,即使它是自定义输出?或者在dbml文件中创建自定义类是否更好?

这必须是最后一个问题,否则我会吃掉自己的手臂

"无法将'SingleResult`1 [IntranetMVC.UserDetail]'类型的对象强制转换为'IntranetMVC.UserDetail'."

这是功能:

  Function Index() As ActionResult
    ViewData("Message") = "Welcome to ASP.NET MVC!"

    Dim userDetail As UserDetail
    Dim office As IList(Of Office)
    Dim activeUser As IList(Of ActiveUser)
    Dim dept As IList(Of Department)

    Using db As PersonnelDataContext = New PersonnelDataContext
      Dim results As IMultipleResults = db.UserDetail(1168)

      userDetail = results.GetResult(Of UserDetail)()
      office = results.GetResult(Of Office)()
      activeUser = results.GetResult(Of ActiveUser)() …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc linq-to-sql

14
推荐指数
1
解决办法
5723
查看次数

为什么C#foreach语句中的迭代变量是只读的?

据我了解,C#的foreach迭代变量是不可变的.

这意味着我不能像这样修改迭代器:

foreach (Position Location in Map)
{
     //We want to fudge the position to hide the exact coordinates
     Location = Location + Random();     //Compiler Error

     Plot(Location);
}
Run Code Online (Sandbox Code Playgroud)

我无法直接修改迭代器变量,而是必须使用for循环

for (int i = 0; i < Map.Count; i++)
{
     Position Location = Map[i];
     Location = Location + Random();

     Plot(Location);        
     i = Location;
}
Run Code Online (Sandbox Code Playgroud)

来自C++背景,我认为foreach是for循环的替代品.但是由于上述限制,我通常会回退使用for循环.

我很好奇,使迭代器不可变的原理是什么?


编辑:

这个问题更多的是一个好奇的问题,而不是一个编码问题.我很欣赏编码答案,但我不能将它们标记为答案.

此外,上面的例子过于简化了.这是我想要做的C++示例:

// The game's rules: 
//   - The "Laser Of Death (tm)" moves around the game board from the
//     start area (index …
Run Code Online (Sandbox Code Playgroud)

c# language-design

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

如何从c#中的MethodCallExpression调用该方法

我有一个方法调用表达式并尝试调用该方法.我找到了一种方法,但是我在检索参数值方面遇到了问题,因为不是每个参数都用ConstantExpression描述.

Expression<Action<T>> = t => t.DoSomething(Par0, Par1, Par2);
MethodCallExpression methodCallExpression = selector.Body 
                                               as MethodCallExpression;

// get the information which is needed to invoke the method from the provided 
// lambda expression.
MethodInfo methodInfo = methodCallExpression.Method;
object[] arguments = methodCallExpression.Arguments.OfType<ConstantExpression>()
                            .Select(p => p.Value).ToArray();

// invoke the expression on every item within the enumerable
foreach (TSource item in source)
{ 
    methodInfo.Invoke(item, arguments);
}
Run Code Online (Sandbox Code Playgroud)

另外,我已经看到了一些其他方法来调用该方法,现在我不确定这是什么方法.

var func = expression.Compile();
var success = func.Invoke();
Run Code Online (Sandbox Code Playgroud)

所以我的问题是,如何从中检索方法参数值methodCallExpression.Arguments

或者有更简单的方法来实现我的目标吗?

.net c# parameters lambda

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

REST Web应用程序中的分页

这是对这个问题的更通用的重构(消除了Rails的特定部分)

我不确定如何在RESTful Web应用程序中的资源上实现分页.假设我有一个被调用的资源products,您认为以下哪个是最好的方法,以及为什么:

1.仅使用查询字符串

例如.http://application/products?page=2&sort_by=date&sort_how=asc
这里的问题是我不能使用整页缓存,并且URL也不是很干净且易于记忆.

2.使用页面作为资源和查询字符串进行排序

例如.http://application/products/page/2?sort_by=date&sort_how=asc
在这种情况下,看到的问题是它http://application/products/pages/1不是一个独特的资源,因为使用sort_by=price可以产生完全不同的结果,我仍然不能使用页面缓存.

3.使用页面作为资源和URL段进行排序

例如.http://application/products/by-date/page/2
我个人认为使用这种方法没有问题,但是有人警告我这不是一个好的方法(他没有给出理由,所以如果你知道为什么不推荐,请告诉我)

任何建议,意见和批评都非常受欢迎.谢谢.

sorting rest pagination

325
推荐指数
9
解决办法
6万
查看次数

使用ruby splat运算符在哪里合法?

Splats很酷.它们不只是用于爆炸阵列,尽管这很有趣.它们还可以转换为数组并展平数组(请参阅http://github.com/mischa/splat/tree/master以获取他们所做的详尽列表.)

看起来无法对splat执行其他操作,但在1.8.6/1.9中,以下代码抛出"意外的tSTAR":

foo = bar || *zap #=> unexpected tSTAR

虽然这有效:

foo = *zap || bar #=> works, but of limited value

splat在哪里可以出现在表达式中?

ruby arrays syntax operator-precedence splat

18
推荐指数
2
解决办法
9441
查看次数

如何在XSLT中动态选择节点

我有一个XML文件:

<?xml version="1.0" standalone="yes"?>
<Questionnaire>
  <Temp_GridTypeTable_6>
    <Column2>Select Yes/No</Column2>
  </Temp_GridTypeTable_6>
  <Temp_GridTypeTable_1>
    <Column2>Rank 1,2,3</Column2>
  </Temp_GridTypeTable_1>
  <Temp_GridTypeTable_1>
    <Column1>I needed the income</Column1>
    <Column2>Why did you take a job on this project?</Column2>
  </Temp_GridTypeTable_1>
  <Temp_GridTypeTable_1>
    <Column1>Other</Column1>
    <Column2></Column2>
  </Temp_GridTypeTable_1>
  <Temp_GridTypeTable_2>
    <Column2>Select "Yes/No"</Column2>
  </Temp_GridTypeTable_2>
  <Temp_GridTypeTable_2>
    <Column1>No jobs</Column1>
    <Column2>344</Column2>
  </Temp_GridTypeTable_2>
  <Temp_GridTypeTable_3>
    <Column2>Input</Column2>
  </Temp_GridTypeTable_3>
  <Temp_GridTypeTable_3>
    <Column1>Unit</Column1>
    <Column2>123</Column2>
  </Temp_GridTypeTable_3>
</Questionnaire> 
Run Code Online (Sandbox Code Playgroud)

我想访问

<xsl:for-each select="Questionnaire/concat('Temp_GridTypeTablenode_',"1"))>
Run Code Online (Sandbox Code Playgroud)

但是这个说法不起作用.

xslt

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

软件设备是否可以隐藏您使用开源的事实?

我正在感受一种趋势,即当你广泛使用开源时,你应该追求软件设备,因为它提供了一种避免客户询问它是如何开发的方法.

如果客户看到你正在向他们收取大量资金但却使用了大量免费开源,那么他们就会想要进行更深入的谈判,而不是他们根本无法在框内达到峰值.

还有其他人观察到这种趋势吗?

linux open-source web-applications

0
推荐指数
2
解决办法
709
查看次数