小编LIN*_*dka的帖子

是否可以让 Convert.ChangeType() 接受货币?

NumberFormatInfo nfi = new NumberFormatInfo();
nfi.CurrencySymbol = "$";

var result1 = decimal.Parse("$123456", NumberStyles.Any, nfi).Dump(); // this works well
var result2 = Convert.ChangeType("$123456", typeof(decimal), nfi); // this doesn't work
Run Code Online (Sandbox Code Playgroud)

我需要 Convert.ChangeType() 来接受货币,这可能吗?尝试设置 NumberFormatInfo,但看起来它忽略了货币值。

.net c#

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

.AddDbContext方法在哪里?

据称它到处都调用了services.AddDbContext <>方法,但在ConfigureServices(IServiceCollection服务)方法中无法识别它.
我究竟做错了什么?

asp.net-core

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

如何单元测试Response.Redirect?

我需要测试我的控制器,它在最后一行做Response.Redirect().但在那一刻,Response对象为null.我需要做什么来进行单元测试呢?
我不使用NUnit或其他工具,但内置.

.net testing model-view-controller unit-testing

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

Tiff注释

  1. 我在哪里可以找到Tiff注释(Wang/Kodak)格式规格?需要解析其中的一些并放到文本文件中.浪费了几个小时谷歌搜索没有结果.
  2. .NET可以使用哪些SDK进行标记?免费sdk是首选.Libtiff对任何tiff标签的限制为32K,但某些注释标签(如位图)可能会更长.
    谢谢!

.net tiff image image-processing

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

LINQ to Azure搜索

我正在创建一个可与Azure搜索服务一起使用的类。我希望它接受用于搜索文档的LINQ表达式,以便外部模块不知道Azure搜索语法。

  1. 有可以实现它的库吗?由于Azure搜索还很年轻,因此我无法在Internet上找到此类搜索。我发现的只是RedDog软件包,该软件包相当不错,但仍然需要字段名称和比较操作,因为某些日子字符串肯定会变得“神奇”。

  2. 好的,Azure搜索还接受OData格式的查询。我见过很少的OData查询到LINQ表达式解决方案,但没有一个相反。我需要一个可以将LINQ转换为OData字符串的库。

任何帮助表示赞赏。

.net c# linq azure odata

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

Html.RenderPartial很慢

我们的网络应用程序包含数十个部分视图,其中一些是其他人的孩子.我们注意到应用程序在第一次加载时变慢,需要0.5到1秒来初始化它第一次调用的每个视图.我追踪时间并发现了这个:

Html.RenderPartial("~/Full/Relative/Path/To/View.cshtml", null);  
Run Code Online (Sandbox Code Playgroud)

即使视图绝对是空的,也可能需要大约1秒钟.同时这个:

var view = ViewEngines.Engines.FindPartialView(
ViewContext.Controller.ControllerContext, "~/Full/Relative/Path/To/View.cshtml");
Run Code Online (Sandbox Code Playgroud)

需要1毫秒,所以没有时间花在寻找文件上.
问题:
1.视图编译器花费这么长时间是正常的吗?
2.还有其他方法可以使第一次调用快速但没有在csproj中使用指令预编译视图吗?

ps:奇怪的是,在应用程序开发开始时,相同的视图加载速度更快.

.net asp.net-mvc razor

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

回发后TextBoxFor没有刷新

我可能在某个地方犯了一个愚蠢的错误.我将非常感谢您的帮助.
我有一个带有单个可编辑字段的MVC3应用程序示例,该字段使用TextBoxFor方法显示给用户.在索引(POST)操作中,我更改了值,但它仍然保持不变.我究竟做错了什么?

我的代码:
型号:

public class TestModel
{
    public string Name { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

视图:

using (Html.BeginForm())
{
    @Html.TextBoxFor(m => m.Name)
    <input type="submit" />
}
Run Code Online (Sandbox Code Playgroud)

控制器:

public ActionResult Index()
{
    return View("Index", new TestModel() { Name = "Before post" });
}

[HttpPost]
public ActionResult Index(TestModel model)
{
    model.Name = "After post";
    return View("Index", model);
}
Run Code Online (Sandbox Code Playgroud)

如果我用TextBox或DisplayTextFor替换TextBoxFor,那么它可以正常工作.

c# asp.net-mvc

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

如何使 ActivityIndi​​cator 覆盖全屏?

我有一个StackLayout和一些里面的元素(按钮、文本等)。
我希望ActivityIndi​​cator覆盖整个屏幕并使其无法对这些元素执行任何操作。
我已将ActivityIndi​​cator放在StackLayout 中,但用 AbsoluteLayout 包装它,认为 AbsoluteLayout 可以轻松地重叠所有内容:

<StackLayout>
    <AbsoluteLayout>
        <ActivityIndicator ... />
    </AbsoluteLayout>
    <...other elements...> 
</StackLayout>
Run Code Online (Sandbox Code Playgroud)

相反,活动指示器显示在 StackLayout 的顶部,其他元素可用于影响。我是 Xamarin 和布局的新手,我做错了什么?互联网上的所有样本每页都有一个 ActivityIndi​​cator...

xamarin xamarin.forms

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

OnException - 两次调用

我有带OnException处理程序的BaseController类.

public class ApiBaseController : Controller
{
    protected override void OnException(ExceptionContext filterContext)
    {
        filterContext.Result = ...
        filterContext.HttpContext.Response.StatusCode = (int)HttpStatusCode.BadRequest;
        filterContext.ExceptionHandled = true;
    }
}
Run Code Online (Sandbox Code Playgroud)

我继承的控制器在其操作上有自定义的HandleJsonError:

public class ApiCompanyController : ApiBaseController
{
    [HttpPost, HandleJsonError]
    public ActionResult Delete(int id)
    {
        // ...
        if (...) throw new DependentEntitiesExistException(dependentEntities);
        // ...
    }
}
Run Code Online (Sandbox Code Playgroud)

HandleJsonError是:

public class HandleJsonError : HandleErrorAttribute
{
    public override void OnException(ExceptionContext exceptionContext)
    {
        // ...
        exceptionContext.ExceptionHandled = true;
    }
}
Run Code Online (Sandbox Code Playgroud)

当DependentEntitiesExistException异常上升时,将调用基本控制器和HandleJsonError的OnException处理程序.在HandleJsonError的OnException完成后,如何才能调用基本控制器OnException?

.net asp.net-mvc

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

IQueryable &lt;T&gt; .Include()被忽略

我具有ParentChild彼此相关的实体,范围是1到M。我需要在单个SQL查询中与子代一起查询子代,但是该Include方法在某些情况下无法正常工作。
这对表ParentChild表都进行了正确的单个查询(通过JOIN):

var r1 =
    ctx.Set<Parent>()
       .Include(p => p.Childs)
       .Where(p => p.Id == 1)
       .ToList();
Run Code Online (Sandbox Code Playgroud)

一旦我快速创建了一个匿名对象,孩子就会迷路,SQL仅包含Parent的字段。检索孩子仍然很懒-他们仍未加载:

var r2 =
    ctx.Set<Parent>()
       .Include(p => p.Childs)
       .Where(p => p.Id == 2)
       .Select(p => new { myParent = p})
       .ToList();
Run Code Online (Sandbox Code Playgroud)

问题:

  1. 为什么会这样呢?
  2. 我该如何在LINQ中构造一个新的匿名对象,以使孩子不会迷路?

PS我想保持父级的Childs属性为虚拟。

.net c# linq entity-framework

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

CQRS:写入 RDBMS,从 NoSQL 读取?

我一直在考虑分离读取和写入流,甚至让它们使用不同的数据库,通过水平扩展“读取”数据库来提供最佳的快速数据可用性。我要将我的项目写入数据库,将对象更改通知推送到队列中,以便另一个服务读取消息并将更新的数据复制到一个或多个非规范化的“读取”数据库。考虑到这一点,我发现如果“写入”数据库也被非规范化,这将是糟糕的。
示例:假设有一个名为大学用户的用户配置文件已经毕业。假设我将此信息存储在“写入”数据库中,如下所示:

{ userId: 100, name: "John", universityId: 200, universityName: "Cambridge"}
Run Code Online (Sandbox Code Playgroud)

假设用户打开了他的个人资料进行编辑,当他在编辑时,另一个人(剑桥代表)已将名称从“剑桥”更改为“CU”并保存更改,因此它们同时进入“写入”和“读取”数据库。更新大学名称的服务结束了,现在"想"大学到处都OK。在这一刻之后,第一个用户用旧的大学名称保存更新的个人资料,这个名字将出现在他的个人资料出现的每个地方。
这类问题让我觉得“写”数据库必须始终规范化,不能包含重复项。但是我从来没有从关于 CQRS 的文章中找到这个原则。我想错了吗?

sql-server mongodb cqrs

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