小编Hca*_*tek的帖子

switch语句是否适用于工厂方法?C#

我想返回一个接口,并在switch语句中我想设置它.这是一个糟糕的设计吗?

private IResultEntity GetEntity(char? someType)
    {
        IResultEntity entity = null;

        switch (someType)
        {
            case 'L': //life
                entity = new LifeEntity();
                break;
            case 'P': //property
                entity = new PropertyEntity();
                break;
            case 'D': //disability
                entity = new DisabilityEntity();
                break;
            case 'C': //credit card
                entity = new CreditCardEntity();
                break;
        }

        return entity;
    }
Run Code Online (Sandbox Code Playgroud)

c# design-patterns interface factory-method

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

Web应用程序项目程序集引用存储在哪里?

为Web应用程序存储的程序集引用位置在哪里?

在网站中,当您添加引用时,我会看到在web.config中写入程序集节点的程序集标记.我只是好奇Web应用程序项目如何建立连接以获得正确的本地DLL?

我手动添加引用和应用程序构建,但dll不会导入到BIN文件夹中,并且组装节点不会在Web配置中创建,因为它们位于Web站点中.我做一个解决方案搜索文本'assembly ="SomeAssembly ..."并没有找到结果.

我只是很好奇,因为我试图集中更新程序集引用,因为第三方控件供应商定期发布修补程序,我们最终必须运行并更新所有单个页面引用程序集.我能够在Web站点项目中有效地完成这项工作,但我对Web应用程序项目还是比较陌生的.任何建议或链接将不胜感激.我想我正在寻找有关ASP.NET Web应用程序项目的汇编和控件参考管理的技巧.

asp.net assemblies web-config

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

ASP.NET MVC3 Razor语法帮助 - 我陷入无限循环

我正在尝试将小型mvc2应用程序转换为mvc3 razor语法.在我的mvc2应用程序中,我使用带有母版页的aspx视图引擎.按照Steven Sanderson的Pro MVC2第2版的例子,在母版页中我调用了一个控制器动作,为每个实体呈现局部视图.这是正常的.

 <div id="categories">
    <% Html.RenderAction("Menu", "Nav"); %>
</div>
Run Code Online (Sandbox Code Playgroud)

使用_layout.cshtml和razor我正在尝试这个.这是我的问题所在.

 <div id="categories">
    @{ 
        Html.RenderAction("Menu", "Nav"); 

    }
</div>
Run Code Online (Sandbox Code Playgroud)

这导致了一个无限循环,而且我得到了一个奇怪的StackOverflowException.任何人都可以帮我纠正这个问题吗?这是控制器方法代码.

  public ViewResult Menu(string personId)
    {
        Func<string, NavLink> makeLink = pId => new NavLink
        {
            Text = pId ?? "Home"
            , RouteValues = new RouteValueDictionary(new { controller = "Person", action = "Person"})

        };

        List<NavLink> navLinks = new List<NavLink> {makeLink(null)};


        Func<Person, NavLink> makeLink2 = p => new NavLink
        {
            Text = p.Name ?? "Home"
            , RouteValues = new RouteValueDictionary(new { controller = …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc razor asp.net-mvc-3 asp.net-mvc-2

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

如何使DIV占据容器div的其余高度?

我有一个div有两个嵌套的div.第一个孩子根据其内容有不同的高度,我希望第二个div高度是父母留下的任何东西.

<div style="height:500px;">
   <div>Some Content Here</div>
   <div>This div needs to take up the rest of the space of its parent</div>
</div>
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

谢谢,〜在圣地亚哥

html javascript css jquery

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

可以/应该在ac#switch语句中抛出异常吗?

我有一个返回int的插入查询.基于该int我可能希望抛出异常.这是否适合在switch语句中执行?

 switch (result)
        {

            case D_USER_NOT_FOUND:
                throw new ClientException(string.Format("D User Name: {0} , was not found.", dTbx.Text));
            case C_USER_NOT_FOUND:
                throw new ClientException(string.Format("C User Name: {0} , was not found.", cTbx.Text));
            case D_USER_ALREADY_MAPPED:
                throw new ClientException(string.Format("D User Name: {0} , is already mapped.", dTbx.Text));
            case C_USER_ALREADY_MAPPED:
                throw new ClientException(string.Format("C User Name: {0} , is already mapped.", cTbx.Text));
            default:

                break;
        }
Run Code Online (Sandbox Code Playgroud)

我通常会向交换机添加break语句,但它们不会被命中.这是一个糟糕的设计吗?请与我分享任何意见/建议.

谢谢,〜在圣地亚哥

c# exception throw switch-statement

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

如何从命令行或批处理文件启动Cassini Web Server?

无论如何从命令行启动Cassini Web服务器?exe似乎在此路径中,C:\ Program Files(x86)\ Common Files\microsoft shared\DevServer\10.0

我尝试使用建议的参数,但它似乎不起作用.有没有人知道,或者有一个脚本可以做到这一点?

感谢任何帮助或提示,
干杯,
〜在圣地亚哥

asp.net webserver command-line cassini

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

gulp任务找不到karma.conf.js

我试图通过gulp任务运行业力测试.我使用https://github.com/karma-runner/gulp-karma,由于某种原因,gulp找不到我的karma.conf.js.该文件与gulpfile位于同一文件夹中.项目的根源.无论我放置什么路径,我都会得到相同的错误文件./karma.conf.js不存在.我无法弄清楚如何正确地路径.这是gulp任务的代码.

gulp.task('tdd', function (done) {
  new Server({
    configFile: 'karma.conf.js'
  }, done).start();
});
Run Code Online (Sandbox Code Playgroud)

karma-runner gulp gulp-karma

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

用于空白的javascript正则表达式或&nbsp;

我正在为空白寻找一个javascript正则表达式.我在循环中检查几个不同的字符串,我需要找到其中有大空格的字符串.

白色空格字符串是一个循环,像这样......

请阅读此代码,var whitespace = "&nbsp;"然后循环只会在其上连接更多非破坏空格.

var whitespace = "&nbsp;"

        for (var x = 0; x < 20; x++) {
            whitespace += "&nbsp;"
        }
Run Code Online (Sandbox Code Playgroud)

然后它会在字符串concat中使用.

sometext += whitespace + someData;
Run Code Online (Sandbox Code Playgroud)

我需要识别包含空格(20个空格)的字符串.

或者我应该做一个contains(whitespace)类似的东西.

任何帮助表示赞赏.

干杯,〜在圣地亚哥

javascript regex

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

单元测试帮助.如何测试输出到控制台的消息?

我是单元测试的新手.如何检查控制台输出?我有

namespace XXShapes
{
    public abstract class XXShape
    {
        public virtual void DrawXXShape()
        {
            Console.WriteLine("The XXShape was drawn.");

        }
    }

public class XXCircle : XXShape
{
    public override void DrawXXShape()
    {
        Console.WriteLine("The XXCircle was drawn.");
    }
}
Run Code Online (Sandbox Code Playgroud)

}

namespace XXShapes.Test
{
    [TestFixture]
    public class XXShapeTest
    {
        [Test]
        public void MyFirstTest()
        {
            XXShape s = new XXCircle();
            string expected = "The XXCircle was drawn.";
            s.DrawXXShape();
            string actual = Console.ReadLine();
            Assert.AreEqual(expected, actual);
        }
    }


}
Run Code Online (Sandbox Code Playgroud)

我应该如何正确地测试这个?谢谢你的任何指示.干杯,〜ck

c# tdd nunit

8
推荐指数
2
解决办法
5612
查看次数

javascript如何切换window.location属性的路径名和重定向

我想将用户从不同的URL重定向到特定的URL.我尝试了各种各样的替换方式,似乎无法得到我想要的行为.除了我提供主机名外,此代码有效.我想使用windows.location.hostname中的现有主机名,只提供一个新的路径名.有时网址大小和斜线('/')不同.

window.location = 'http://localhost:36065/NewPath';
Run Code Online (Sandbox Code Playgroud)

我该如何更改这些网址?

http://somesite.com/xxx/yyy/zzz to http://somesite.com/NewPath
http://somesite.com/xxx/yyy to http://somesite.com/NewPath
http://somesite.com/xxx to http://somesite.com/NewPath
Run Code Online (Sandbox Code Playgroud)

我认为你说对了.路径可以在路径上变化,我想在.com之后基本上用'NewPath'替换所有内容

如果可能的话,我想要一个干净的正则表达式解决方案,但我是那个部门的新手.感谢任何提示或技巧.

javascript regex window.location

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