小编Bla*_*ack的帖子

Blazor WebAssembly 是否可以合并到 .NET Framework 4.8 MVC 站点中?

我已经使用 .NET Core 5 Mvc 应用程序成功完成了此任务,从 Razor 页面站点提供了单独的 Blazor WebAssembly SPA。我正在使用标签助手并手动引用 _framework/blazor.web assembly.js 文件。它很好地保持了 razor 页面布局,并在 razor 页面网站内无缝地提供 SPA,并且是完全交互式的。

由于 WebAssembly 完全在浏览器中运行,因此我很好奇是否有办法对 .NET Framework 4.8 MVC 应用程序执行相同的操作。我认为 MVC 应用程序需要提供的只是访问 _framework/*.j​​s 文件来启动 Blazor 应用程序。

Blazor 项目的目标是 .NET Standard 2.1,所以我真的不明白为什么它不可能。.NET Framework 4.8 只需要 RenderComponentAsync 的等效项。这存在吗?

asp.net-mvc blazor-webassembly

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

有没有办法将SQL Server Developer Edition限制为更严格的版本中的功能?

从本质上讲,我们主要为某些数据库开发SQL Server Web Edition,为其他数据库开发SQL Server Standard Edition.vardecimal如果在暂存(以及生产)版本中不支持,我们希望防止引入开发等功能的可能性.

理想情况下,会有一个类似于兼容级别的选项.

谢谢!

sql sql-server ssms

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

返回一个结果集时,Dapper-dot-Net的“ Query”和“ QueryMultiple”在性能和行为上是否相等?

我们最近构建了一个名为TableMapperT的映射类,该类封装了我们的Dapper多图功能。我们将其与名为TableCommand的“命令”对象分开构建,该对象包含sql文本信息等。为了使用它,我们必须使用“ QueryMultiple”,这对于返回单个结果然后映射它也是必需的。

我们已经运行了基本的性能指标,其性能似乎与常规的Query api相同(使用相同的多图对相同的查询进行循环,但是使用QueryMultiple使用“ Read()”进行循环。

因此,问题是,对单个记录集使用QueryMultiple的性能或行为是否存在根本的劣势?似乎没有,但认为整个社区可能会有更深刻的见解。

Sam Saffron指出结果未在此帖子中进行缓冲(Dapper.NET和具有多个结果集的proc存储),但这是从前一阵子开始的,并且源代码看起来像“ buffered”现在为true(公共IEnumerable Read(bool缓冲= true)。

用法(下面)非常干净,它使我们可以在一个位置上纠缠连接和错误处理,这是对IDatabase对象的“查询”扩展方法。

var command = new TableCommand(<SQL>,<Parameters>,<Timeout>);
var mapper = new TableMapper<OrderLineItem>();  //return type here
mapper.SetMap<OrderLineItem,Product>((oli,p)=>{oli.Product = p;return oli}); //input types here

return this.Database.Query(command,mapper);//returns IEnumerable<OrderLineItem>
Run Code Online (Sandbox Code Playgroud)

dapper

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

是否可以在泛型类上使用构造函数来引入其他泛型类型?

我正在尝试构建一个泛型类,其构造函数引入了一个额外的类型,但编译器说不禁.

我不太明白为什么以下不起作用:

public class Foo<T>
{
    public Foo<T,TBar>(TBar tBar)
    {
    ...
    }
}
Run Code Online (Sandbox Code Playgroud)

这并不重要,因为我可以使用流畅的api(这可能是首选)来编写课程,但我仍然想知道为什么我不能.我能想到的唯一解释是编译器不喜欢与类级泛型类型声明混合的方法级泛型类型声明.

c# generics

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

为什么ASP.NET MVC 4与IList for editor不能正确编写索引表示法?

我有一个奇怪的情况,在我的编辑器模板中引用'模型会产生格式错误的索引'名称'字段:

编辑

@model IList<BillingRateItem>

@for (int i = 0;i < this.Model.Count(); i++)
{
    @Html.HiddenFor(m => this.Model[i].BillingRateItemID)
}
Run Code Online (Sandbox Code Playgroud)

产生的隐藏字段包括索引之前的一段时间,这是有问题的:

HTML已呈现

<input id="Model_BillingRateItems__0__BillingRateItemID" name="Model.BillingRateItems.[0].BillingRateItemID" type="hidden" value="9">
Run Code Online (Sandbox Code Playgroud)

我想要的是什么

请注意,'Model.BillingRateItems [0]'在名称和索引之间没有句点.这很好!

<input id="Model_BillingRateItems__0__BillingRateItemID" name="Model.BillingRateItems[0].BillingRateItemID" type="hidden" value="9">
Run Code Online (Sandbox Code Playgroud)

编辑 - 这是调用编辑器的视图的示例

@model BillingRateViewModel // has multiple BillingRateItems

@Html.EditorFor(m=>m.BillingRateItems,"BillingRateItemsGrid")
Run Code Online (Sandbox Code Playgroud)

注意:当我更改编辑器以接受父对象(例如BillingRate)时,索引工作正常.也许结论只是所有编辑都会以''开头.无论背景如何.在Enumerables的情况下,它将添加'.[].' 即使这样做本机模型绑定器也没有帮助重建对象.

asp.net-mvc asp.net-mvc-4

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

使用 C# 表达式树,我可以创建匿名到类型化对象映射吗?

这是在数据层上,因此性能非常重要。否则我会使用 Automapper。如果它是 IDBConnection,我会使用 Dapper。

我想将匿名对象的简单创作带到 POCO 并使用编译表达式表达它。

代码

public class Foo
{
    public string Bar{get;set;}
    public string Baz{get;set;}
}

public void doStuff()
{
     var obj = new{Bar= "My Name, Baz = "Some other data"};

     //can I recreate this assignment to foo using expressions?
     var foo = new Foo{
         Bar = obj.Bar,
         Baz = obj.Baz
     }
}
Run Code Online (Sandbox Code Playgroud)

(未完成)到目前为止,我已经...

var props = o.GetType().GetProperties(BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.Public)

    foreach (var prop in props)
                {
                    var targetProp = typeof(T).GetProperty(prop.Name);
                    var targetExp = Expression.Parameter(typeof(T), "target"); …
Run Code Online (Sandbox Code Playgroud)

c# lambda linq-expressions

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