小编dov*_*ove的帖子

使用bool(返回Type)来处理异常或将异常传递给客户端?

我试图找出处理异常的最佳方法,我的应用程序有很多层,并开始使用返回类型的BOOL,即如果失败则返回False,如果成功则返回True ..

这在SaveMyRecord(somerecord)等方法中效果很好; 因为我传递的值并且不需要任何返回,所以我可以使用bool的返回类型来指示它是否成功.

但后来它让我觉得像GetMyRecord()这样的东西实际上返回了IQueryable的类型,因此我不能用bool告诉我它是否失败.

事情是我处理很多我的错误,他们发生尝试和捕获,因此不希望客户端收到异常.

也许有更好的方法,然后我考虑使用OUT参数但这意味着我需要更改所有方法的签名并添加aditional params ..

也许我应该将异常传递回CLIENT并在那里处理它?

是否有一些标准或任何文档可以提供最佳实践?

.net c# exception-handling exception try-catch

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

如何在两个网站中访问同一个Session?

我需要知道如何在另一个Web应用程序中访问一个网站或Web应用程序设置的会话.

例如,我已经在firefox选项卡中登录了gmail.com,然后我在另一个选项卡中打开了orkut.com,在这里我无需登录.

我需要在ASP.Net中的两个不同的Web应用程序中访问或共享相同的用户会话.

.net asp.net iis session appdomain

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

Usinq Linq选择半逗号分隔字符串中的项目?

我有一个半逗号分隔名称的字符串:

string names = "Jane;Harry";
Run Code Online (Sandbox Code Playgroud)

我还有一个客户对象列表:

public class Customer
{
  public string FirstName { get; set; }
  public string LastName { get; set; }
}

List<Customer> customers = new List<Customer>();
customers.Add(new Customer(){FirstName="John", LastName="Doe"});
customers.Add(new Customer(){FirstName="Jane", LastName="Doe"});
customers.Add(new Customer(){FirstName="Harry", LastName="Potter"});

var query = from c in customers
            select c;
Run Code Online (Sandbox Code Playgroud)

如何创建仅返回名称位于半逗号分隔列表中的客户的查询?

类似于T-SQL SELECT FistName FROM customer WHERE FirstName IN (list) (有点像)

.net c# linq

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

System.Collections.Generic.List的计数

ViewBag.EquipmentList = myInventoryEntities.p_Configurable_Equipment_Request_Select(Address_ID, false).Select(c => new { Value = c.Quantity + " " + c.Device_Name + " (s)", ID = c.Device_ID.ToString() }).ToList();
Run Code Online (Sandbox Code Playgroud)

在Razor我想做以下事情

@ViewBag.EquipmentList.Count
Run Code Online (Sandbox Code Playgroud)

但是Count总是== 1

我知道我可以在foreach中迭代,但更愿意采用更直接的方法.

也许我在概念上是假的?

c# asp.net-mvc razor

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

MVC3 Razor - 至少有一个复选框检查验证

我是新来的MVC3和剃刀引擎,我想它所以至少一个复选框被选中提交按钮开火.

 <div class="editor-field">
      @Html.Label("item1")
      @Html.CheckBoxFor(Model => Model.item1)
      @Html.Label("item2")
      @Html.CheckBoxFor(Model => Model.item2)
      @Html.Label("item3")
      @Html.CheckBoxFor(Model => Model.item3)
 </div>
 <p>
     <input type="submit" value="Create" />
 </p>
Run Code Online (Sandbox Code Playgroud)

我知道,我需要某种标签的渲染文本如果选择0复选框,每个复选框需要一个id,这样我可以看看自己的价值观,但有没有在MVC3剃刀东西,使这个简单的?谢谢

javascript checkbox asp.net-mvc razor asp.net-mvc-3

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

DAL中的app.config和WebApplication中的web.config

我正在使用Entity Framework和ASP.NET MVC编写应用程序,因此我决定将DAL与MVC Web应用程序分开.实际上一切都很好,除了下一个问题(如果它的问题):我不得不将实体连接字符串从DAL项目的app.config复制到Web应用程序的Web.config.实际上它看起来是正确的:DAL不应该知道连接字符串到Data,它是Main Application的职责.

但我真的不喜欢,我必须在DAL的app.config中保留Entity连接字符串,因为它需要更新我的EntityModel(*.edmx).是否有一些最佳实践来引用Web应用程序的连接字符串?或者我应该像现在一样离开它?

asp.net-mvc entity-framework app-config

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

针对404,401和其他异常的ASP.NET MVC4错误处理

我很难理解如何正确处理ASP.NET MVC4中的错误.作为一个例子,我使用"Internet应用程序"模板创建了一个新的MVC4项目,并更新了我的家庭控制器以测试一些错误情况:

public class HomeController : Controller
{
    public ActionResult Index()
    {
        ViewBag.Message = "Hello";
        return View();
    }

    public ActionResult About()
    {
        throw new HttpException(401, "Not Authorized");
    }

    public ActionResult Contact()
    {
        throw new Exception("Oh no, some error occurred...");
    }
}
Run Code Online (Sandbox Code Playgroud)

我在web.config文件中启用了customErrors:

<customErrors mode="On"></customErrors>
Run Code Online (Sandbox Code Playgroud)

当我运行的应用程序,然后单击"联系人",我看到了〜/查看/共享/ Error.cshtml如预期看法,因为我已经在HandleErrorAttribute注册成为一个全球性的过滤器.

但是,当我单击"关于"时,我得到标准的ASP.NET黄色错误页面,上面写着"运行时错误".为什么这两个异常的处理方式不同?如何HttpException使用该HandleError属性获取被捕获的实例?


CustomErrors配置

理想情况下,我想要以下自定义错误页面:

  • 一个自定义的404(未找到)页面,它很好用户友好
  • 自定义401(未授权)页面,通知用户他们没有访问权限(例如,在检查模型中特定项目的权限后抛出)
  • 在所有其他情况下使用的通用错误页面(代替标准的黄色ASP.NET页面).

我创建了一个新的"错误"控制器,其中包含上述每个场景的视图.然后我在web.config中更新了customErrors,如下所示:

<customErrors mode="On" defaultRedirect="~/Error/Trouble">
    <error statusCode="404" redirect="~/Error/NotFound"></error>
    <error statusCode="401" redirect="~/Error/NotAuthorized"></error>
</customErrors>
Run Code Online (Sandbox Code Playgroud)

404页面工作正常,但我根本没有得到401页面.相反,当我尝试访问控制器上的操作时,我得到〜/ Error/Trouble视图(指定为的视图defaultRedirect). …

asp.net asp.net-mvc

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

Z3可以用来预处理问题吗?

由于可用问题需要大量技巧和预处理技术与决策程序无直接关系,因此很多时候对SMT求解器进行新的研究.这些通常是未发表的或需要时间来适当地实施和优化,此外使得对不同解算器的比较和理解非常困难.

是否可以使用Z3作为预处理器来解决问题并将其转储为预处理形式(z3本身用来解决问题)?

我没有看到任何命令行选项,但我猜测可能有一些方法可以实现这一点,通过策略,通过python接口,甚至编写一些额外的代码.

python z3

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

学习ASP.NET MVC从1或2或3开始

我是ASP.NET MVC世界的新手.我有足够的ASP.NET 2.0和3.5经验.

但是当我看到我们现在处于第4版时,直接从这个最新版本开始让我感到不舒服.我正在浏览微软网站上的ASP.NET MVC视频教程,该教程列出了从ASP.NET MVC -1,MVC -2,MVC -3甚至MVC-4开始的学习系列.

所以现在混乱来到这里.. !! 如果我直接从MVC -3开始..我忽略了MVC - 1和MVC - 2错过了什么吗?

我可以直接从MVC - 3开始吗?不用担心别的什么.

asp.net asp.net-mvc asp.net-mvc-3 asp.net-mvc-2 asp.net-mvc-4

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

Elmah.Mvc 2.0自定义身份验证

我正在尝试为Elmah.Mvc 2.0实现自定义身份验证.我知道我的web.config中有两个键(elmah.mvc.allowedRoles和elmah.mvc.allowedUsers),但这对我来说还不够.

我有一个自定义的表单身份验证方法,它在cookie中添加了一些随机盐,因此我没有为elmah.mvc.allowedUsers值添加一个明确的用户名.另外,我没有实施任何角色.

有没有办法覆盖ElmahController或一些Elmah身份验证类/方法?

谢谢!

authentication asp.net-mvc logging elmah elmah.mvc

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