小编Ask*_*ein的帖子

如何在ASP.Net Core MVC应用中获取操作和控制器名称?

如何在Application中获取ActionController命名?ASP.Net MVC Core RC1Startup.cs

我想创建一个中间件和登录下面的代码后的信息(我想记录详细的回应我的数据库,所以我需要行动和控制器的信息。)configure的方法startup.cs-

 app.UseMvc(routes =>
{
     routes.MapRoute(
            name: "default",
            template: "{controller=User}/{action=Index}/{id?}");
 });

//Want to get Action and controller names here..
Run Code Online (Sandbox Code Playgroud)

c# asp.net-core-mvc asp.net-core asp.net-core-1.0

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

通过.Net Core Console应用程序从Entity Framework Core 1.x连接到localdb

如何在Visual Studio中使用.NET Core 1.x控制台应用程序中的Entity Framework Core 1.x?我已经尝试过我从ASP.NET MVC Core 1.x开发中使用的工作流程和命令,并且我遇到了与localdb的连接错误.

如何在控制台应用程序中使用localdb与在ASP.NET MVC Core 1.x应用程序中工作不同?

背景

几次成功使用ASP.NET MVC Core 1.x和Entity Framework Core 1.x之后,我需要创建一个简单的.NET Core Console应用程序来完成一些繁重的工作(将XML加载到新数据库中,创建与松散匹配的表格XML的结构).

我用NuGet安装

  • Microsoft.EntityFrameworkCore.Design(1.1.2)
  • Microsoft.EntityFrameworkCore.SqlServer(1.1.2)
  • Microsoft.EntityFrameworkCore.Tools(1.1.1)

我用DbSets创建了一个DbContext.我添加了一个OnConfiguring()方法并对连接字符串进行了硬编码,就像我在网上的代码示例中找到的一样.我的DbContext看起来像这样:

public class ApplicationDbContext : DbContext
{
    protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
    {
        optionsBuilder.UseSqlServer(@"Server=(localdb)\\mssqllocaldb;Database=MyXmlExport;Trusted_Connection=True;MultipleActiveResultSets=true");
    }

    public DbSet<Author> Authors { get; set; }
    public DbSet<Thread> Threads { get; set; }
    public DbSet<Post> Posts { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我从一个有效的ASP.NET MVC Core 1.x应用程序的appsettings.json中获取连接字符串,将数据库名称更改为简单的名称("MyXmlExport").

我能够创建一个初始迁移.

当我尝试使用我习惯的工作流程时,即调用:

update-database
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

"建立与SQL Server的连接时发生与网络相关或特定于实例的错误.未找到服务器或无法访问服务器.验证实例名称是否正确以及SQL Server是否配置为允许远程连接.(提供程序: SQL网络接口,错误:50 - 发生本地数据库运行时错误.指定的LocalDB实例名称无效."

我可以通过Sql …

c# entity-framework-core visual-studio-2017

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

仅插入一次 EF 代码优先种子数据

在我的 EF 代码优先 MVC 应用程序中,我正在播种一个超级用户基本数据。稍后,可以从应用程序界面更改它的值。

但是我面临的问题 - 每次运行应用程序时,此种子数据都会刷新。我不想要这个重置。有什么办法可以避免这种情况吗?

//This is my DatabaseContext.cs -
public partial class DatabaseContext : DbContext
{
    public DatabaseContext() : base("name=EntityConnection")
    {
       Database.SetInitializer(new MigrateDatabaseToLatestVersion<DatabaseContext, Migrations.Configuration>()); 
    }
}

//This is my Configuration.cs-
internal sealed class Configuration : DbMigrationsConfiguration<DatabaseContext>
{
    public Configuration()
    {
        AutomaticMigrationsEnabled = true;
        AutomaticMigrationDataLossAllowed = false;
    }

    protected override void Seed(DatabaseContext context)
    {
        User user = new User()
            {
                UserId = 1,
                EmailAddress = "xyz@abc.com",
                LoginPassword = "123",                
                CurrentBalance = 0,
            };

        context.Users.AddOrUpdate(user);
    }
}
Run Code Online (Sandbox Code Playgroud)

c# code-first entity-framework-6

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

MatDialog:无论内容大小如何控制整体大小

使用 MatBlazor (1.5.4) MatDialog,我有兴趣将对话框大小固定或设置为总页面的百分比。当前,行为是对话框以其适合内容的大小打开。

我尝试在对话框定义的不同部分添加显式样式,但没有成功。

<MatDialog @bind-IsOpen="@IsDialogOpen" Style="width: 600px; height:600px">
    <MatDialogTitle>Some title</MatDialogTitle>
    <MatDialogContent Style="width: 600px; height:600px">This is the content</MatDialogContent>
    <MatDialogActions>
        <MatButton OnClick="@(() => this.IsDialogOpen = false)" Icon="close">Close</MatButton>
    </MatDialogActions>
</MatDialog>

@code
{
    private bool IsDialogOpen { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

似乎没有明确的机制集成到MatDialog组件中,因此我猜需要明确的样式/CSS。

控制对话框大小的正确方法是什么?

c# blazor matblazor

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

为什么EF Core没有OfType(Type type)方法?

我目前使用 EF Core 3.0。所以,我想通过基表请求来实现TPH模型数据选择。让我们看一下例子:

public class BaseClass
{
   public int Base {get;set;}
}

public class Foo : BaseClass
{
   public int FooMember {get;set;}
}

public class Bar : BaseClass
{
  public int BarMember {get;set;}
}

public DbSet<BaseClass> dbSet {get;set;}
Run Code Online (Sandbox Code Playgroud)

我想实现这样的代码:

var getInheritedSet = dbSet.OfType(typeIStronglyNeed);
Run Code Online (Sandbox Code Playgroud)

但我只能做这样的事情:

var getInheritedSet1 = dbSet.OfType<Foo>;
var getInheritedSet2 = dbSet.OfType<Bar>;
Run Code Online (Sandbox Code Playgroud)

您能解释一下为什么 EF Core 3.0 没有OfType(Type type)but only 吗OfType<TType>()

第二个问题——如何从 DbSet 获取继承的数据类型?

谢谢。

c# entity-framework-core .net-core

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

System.Text.Json:处理无穷大值

据我所知,这是使用 NewtonsoftJson 时处理双“Infinity”值的适当方法,以避免序列化时出现这些值。

x.SerializerSettings.FloatFormatHandling = FloatFormatHandling.DefaultValue;
Run Code Online (Sandbox Code Playgroud)

使用 System.Text.Json 时相应的方法是什么?

c# json.net json-deserialization system.text.json

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

如何将不可见的ViewModel添加到MvvmCross中的导航堆栈

我有以下应用情况.在启动时,我想转到"列表"ViewModel作为启动视图模型/视图.但我希望用户能够选择BACK来转到"菜单"ViewModel.如何在MvvmCross中完成?

c# xamarin.ios xamarin.android mvvmcross

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

使用Json.Net JObject自动映射反射错误

将AutoMapper与json.net JObject一起使用时,我遇到了反射错误

public class Source
{
    public string Key { get; set; }
    public JObject Value { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

这是目标

public class Target
{
    public string Key { get; set; }
    public JObject Value { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

这是映射

public class SourceTargetMapping
{
    public static void IntializeMapping()
    {
        Mapper.CreateMap<Target, Source>()
            .ForMember(g => g.Value, op => op.ResolveUsing(s => s.Value));

        Mapper.CreateMap<Source, Target>()
            .ForMember(s => s.Value, op => op.ResolveUsing(g => g.Value));
    }

}

public static class SourceTargetMappingExtensions
{
    public static …
Run Code Online (Sandbox Code Playgroud)

c# json.net automapper

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

WPF动画警告:6:无法执行操作

我在VIsual Studio输出面板中的WPF应用程序警告中观察到以下文本:

WPF动画警告:6:无法执行操作,因为指定的Storyboard从未应用于此对象以进行交互式控制.Action ='Stop'; 故事板= 'System.Windows.Media.Animation.Storyboard'; Storyboard.HashCode ='65981734' ; Storyboard.Type = 'System.Windows.Media.Animation.Storyboard'; TargetElement = 'System.Windows.Controls.ContentPresenter'; TargetElement.HashCode = '49882372'; TargetElement.Type = 'System.Windows.Controls.ContentPresenter'

如何将HashCode"反转"为某个xaml元素?如何找到附加动画的位置?

提前致谢

c# wpf xaml

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

如何在数学函数上创建对数,余弦,正弦的UnaryExpression

我想建立一个UnaryExpression列表,以便稍后在我的代码中使用。我能够轻松地使其成为BinaryExpression并获得:

var binaryList = new Func<Expression, Expression, Expression>[]
        {
            Expression.Add, 
            Expression.Subtract, 
            Expression.Multiply, 
            Expression.Divide
        };
Run Code Online (Sandbox Code Playgroud)

在我的UnaryExpression列表中,我希望能够作为Unary运算符处理Math.Cos(..),Math.Log(..)。为了得到这个主意,我希望有这样的东西

var unaryList = new Func<Expression, Expression>[]
        {
            Expression.Negate, // works fine
            new Func<Expression, Expression>(
                expr => new UnaryExpression(Math.Cos, expr)
        };
Run Code Online (Sandbox Code Playgroud)

有什么建议么?提前致谢。

c# linq lambda expression

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