小编Ric*_*ett的帖子

将字符串数组连接到"string1,string2或string3"

请考虑以下代码:

string[] s = new[] { "Rob", "Jane", "Freddy" };

string joined = string.Join(", ", s);

// joined equals "Rob, Jane, Freddy"
Run Code Online (Sandbox Code Playgroud)

出于UI原因,我可能希望显示字符串"Rob, Jane or Freddy".

有关最简洁的方法的任何建议吗?

编辑

我正在寻找一些简洁的东西.由于我只连接少量(<10)字符串,所以我不担心这里的运行时性能.

.net c# string

11
推荐指数
4
解决办法
9754
查看次数

ASP.NET Development Server - 日志文件位置

当试图让RESTful WCF服务POST在ASP.NET中工作时,我们在浏览器中看到以下错误消息:

服务器遇到处理请求的错误.请参阅服务器日志以获取更多详

我们正在使用ASP.NET开发服务器 - 有谁知道它保存日志文件的位置?

asp.net rest

11
推荐指数
2
解决办法
5930
查看次数

UI设计和文化敏感度/意识

在为将要在国际上使用的应用程序设计用户界面时,可能会意外地设计出在另一种文化中令人反感或不适当的UI方面.

您是否遇到过这样的问题?如果是,您是如何解决设计问题的?

一些例子:

  1. 用于北爱尔兰的测量应用中的GPS卫星图.卫星必须采用不同的颜色来表明它们是在天空中上升还是下降.许多上升的卫星被认为是好的,因为它表明GPS覆盖将在接下来的几个小时内变得更好.
    我选择绿色上升和橙色下降.我没有意识到这些颜色与爱尔兰天主教徒和爱尔兰新教徒有关.有人建议我们改变颜色.最后选择了蓝色和深粉色.
  2. 对于将要翻译成德语的应用程序,我发现与英语文本相比,您应该为德语文本添加大约50%的额外空间.
  3. 一位朋友正在为中东地区的客户制定战场规划申请.强制要求所有十字准线都应采用对角十字架的形式,以避免任何宗教意义.
  4. (编辑 - 添加了这个)在英国,刻度线(类似√)表示是,而十字(x)表示.在Windows 3.1中选中的复选框使用了十字架,这在我第一次看到它时让我感到困惑.从Windows 95开始,他们就使用了(我称之为)刻度线.据我所知,蜱虫和十字架在美国都被称为复选标记,意思相同

编辑

请确保您在此问题中添加的任何回复与我们都在尝试构建的用户界面一样具有文化敏感性!谢谢.

culture user-interface internationalization

10
推荐指数
2
解决办法
1038
查看次数

ASP.NET MVC中的条带表行(不使用jQuery或等效项)

当使用ASP.NET WebForms ListView控件在HTML表中显示数据时,我使用以下技术来"条带化"表行:

<ItemTemplate>
    <tr class="<%# Container.DisplayIndex % 2 == 0 ? "" : "alternate" %>">
        <!-- table cells in here -->
    </tr>
</ItemTemplate>
Run Code Online (Sandbox Code Playgroud)

使用以下CSS:

tr.alternate
{
    background-color: #EFF5FB;
}
Run Code Online (Sandbox Code Playgroud)

我刚刚浏览了ASP.NET MVC 电影数据库应用程序教程,并了解到在MVC-land表中的行可以(必须是?)构造如下:

<% foreach (var item in Model) { %>
    <tr>
        <td>
            <%= Html.Encode(item.Title) %>
        </td>
        <!-- and so on for the rest of the table cells... -->
    </tr>
<% } %>
Run Code Online (Sandbox Code Playgroud)

我可以在此代码中添加哪些条带来划分表格的行?

注意:我知道这可以使用jQuery完成,我想知道它是否可以用另一种方式完成.

编辑

如果jQuery(或同等)在您看来是最好或最合适的帖子,我会有兴趣知道原因.

asp.net-mvc jquery

10
推荐指数
2
解决办法
8865
查看次数

首次使用ASP.NET MVC时的主要风险

我们计划在一个相对重要的(对业务)项目上使用ASP.NET MVC.开发团队由4名开发人员和技术主管组成.两位开发人员和技术主管之前曾在ASP.NET WebForms项目上合作过,并对使用该技术充满信心.

当我们回顾一些第一个WebForms项目中使用的一些方法时,我们会有点畏缩(例子包括过度使用UpdatePanels,缺乏对ListView等控件的知识,膨胀的ViewState等).

重要的是我们不要在一年内回顾这个项目,并对我们的一些ASP.NET MVC方法感到畏缩!

根据经验,在第一次使用ASP.NET MVC时,是否有任何人可以引用任何关键风险?

我正在考虑陷阱,需要一段时间才能继续进行的灯泡,你认为自己正在战斗的框架的一部分,直到你学会了一个特定的项目,那种事情.

asp.net-mvc

10
推荐指数
2
解决办法
503
查看次数

LINQ将列交换为行

是否有一个花哨的LINQ表达式,可以让我以更简单的方式执行以下操作.我有一个List<List<double>>,假设List是2d矩阵中的列,我想将列列表交换为行列表.我有以下明显的解决方案:

int columns = 5;
var values; // assume initialised as List<List<double>>()

var listOfRows = new List<List<double>>();
for (int i = 0; i < columns ; i++)
{
    List<double> newRow = new List<double>();
    foreach (List<double> value in values)
    {
        newRow.Add(value[i]);
    }
    listOfRows.Add(newRow);
}
Run Code Online (Sandbox Code Playgroud)

c# linq

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

在MSTest中如何检查上次测试是否通过(在TestCleanup中)

我正在使用MSTest在Selenium中创建Web测试,并希望每次测试失败时都会截取屏幕截图,但我不希望每次测试都通过.

我想要做的是在[TestCleanup]方法中放置一个截图函数,如果测试失败则运行它,但如果测试通过则不运行.但是如何判断最后一次测试是否通过?

目前我正在做bool = false[TestInitialize]bool = true如果测试贯穿.

但我不认为这是一个非常好的解决方案.

所以基本上我正在寻找一种方法来检测上次测试是否为true/false [TestCleanup].

selenium mstest webdriver

10
推荐指数
2
解决办法
2312
查看次数

new()和抽象基类的泛型类型约束

在这里,我们有一个简单的类层次结构,并使用具有类型约束的泛型new()

public abstract class Base 
{
}

public class Derived : Base
{
}

public class TestClass
{
    private void DoSomething<T>(T arg) where T : new()
    {
    }

    public void TestMethod()
    {
        Derived d1 = new Derived();
        DoSomething(d1); // compiles

        Base d2 = new Derived();
        DoSomething(d2); // compile error
    }
}
Run Code Online (Sandbox Code Playgroud)

代码无法在指定的行编译,错误为:

'Base'必须是具有公共无参数构造函数的非抽象类型,以便在泛型类型或方法'Foo.DoSomething(T)'中将其用作参数'T'

这个错误是明确的,也是有道理的,但我曾希望编译器能够理解所有派生的Base(可以在这一点实例化)都有一个公共的无参数构造函数.

理论上这对编译器来说是否可行?

c# generics abstract-class base-class

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

敏捷开发和数据库更改

对那些敏捷的从业者来说......

如何在项目期间管理对数据库模式的更改?我的假设是,在敏捷项目中,所涉及的任何数据库的模式都将改变并重构,就像代码库一样.

这个假设是否正确?如果是这样,您是否拥有用于帮助保持平稳运行的特定工具或流程?

agile database-design

9
推荐指数
2
解决办法
2718
查看次数

ExecuteCodeWithGuaranteedCleanup什么时候保证清理?

我一直在阅读.NET中的可靠性功能,并编写了以下类来进行探索ExecuteCodeWithGuaranteedCleanup

class Failing
{
    public void Fail()
    {
        RuntimeHelpers.PrepareConstrainedRegions();
        try
        {
        }
        finally
        {
            RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(Code, Cleanup, "fail");
        }
    }

    private void Code(object message)
    {
        // Some code in here that will cause an exception...
    }

    private void Cleanup(object message, bool something)
    {
        Console.WriteLine(message);
        Console.ReadLine();
    }
}
Run Code Online (Sandbox Code Playgroud)

我已经为该Code方法试验了各种代码体.下面列出了这些及其运行时结果

导致OutOfMemoryException- Cleanup 不会被召唤

List<string> ss = new List<string>();

while (true)
{
    string s = new string('x', 1000000);

    ss.Add(s);
}
Run Code Online (Sandbox Code Playgroud)

导致StackOverflowException- Cleanup 不会被召唤 …

.net reliability

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