小编Mar*_*tin的帖子

使用Entity Framework Core自动增加部分主键

我使用EF Core fluent API声明了以下模型:

modelBuilder.Entity<Foo>()
    .HasKey(p => new { p.Name, p.Id });
Run Code Online (Sandbox Code Playgroud)

当我在PostgreSQL中创建数据库时,这两个字段都被标记为主键,但Id字段未标记为自动增量.我也尝试过添加

[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
Run Code Online (Sandbox Code Playgroud)

到Foo下的Id字段,没有它对迁移代码产生任何影响.有没有办法制作Id AI虽然它是PPK?

c# asp.net postgresql entity-framework entity-framework-core

39
推荐指数
4
解决办法
7万
查看次数

处理ASP.NET Core 1.0上的大型文件上载

当我在ASP.NET Core中将大文件上传到我的web api时,运行时会在我处理和存储上传的函数被触发之前将文件加载到内存中.对于大型上传,这会成为一个问题,因为它既缓慢又需要更多内存.对于以前版本的ASP.NET ,有一些关于如何禁用缓冲请求的文章,但是我无法找到有关如何使用ASP.NET Core执行此操作的任何信息.是否可以禁用缓冲请求,以便我的服务器上的内存不会一直耗尽?

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

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

将vector <T> :: iterator与vector <T> :: reverse_iterator进行比较

我正在进行一个练习,我有一个向量,我正在编写自己的反向算法,使用反向和正常(向前)迭代器来反转向量的内容.但是,我无法比较迭代器.

int vals[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 0 };
vector<int> numbers(vals, vals + 10);

vector<int>::iterator       start = numbers.begin();
vector<int>::reverse_iterator end = numbers.rend();
Run Code Online (Sandbox Code Playgroud)

我有一个先前的算法,通过使用两个迭代器来反转向量,但是在这个任务中,我无法使用它们之间的!=运算符来比较它们.我的猜测是在向量中获取基础指针或索引,但我如何得到指针/索引?

c++ iterator stl vector

20
推荐指数
2
解决办法
7354
查看次数

可视化Jenkins管道中的构建步骤

在我的Jenkins管道中,我使用构建步骤触发其他几个作业并将一些参数传递给它.除了我的管道之外,我遇到了可视化我触发的不同工作的问题.我已经设置了Jenkins Delivery Pipeline插件,但是它的文档非常模糊,我只能将管道中的步骤可视化,尽管使用阶段和任务名称标记作业.

例:

我在Jenkins中有两个作业,作为具有以下管道脚本的管道/工作流作业:

Job Foo:

stage('Building') {
    println 'Triggering job'
    build 'Bar'
}
Run Code Online (Sandbox Code Playgroud)

工作栏:

node('master') {
    stage('Child job stage') {
        println 'Doing stuff in child job'
    }
}
Run Code Online (Sandbox Code Playgroud)

使用Jenkins Pipeline Delivery插件可视化时,我只能得到: 管道视图

如何让它在单独的框中显示工作栏中的舞台?

jenkins jenkins-plugins jenkins-pipeline

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

迁移到ASP.NET Core RC2后,集成测试中断

在我的集成测试中,我使用一个TestServer类来为我的集成测试工作一个测试服务器实例.在RC1中,我使用以下代码实例化它:

var server = new TestServer(TestServer.CreateBuilder().UseStartup<Startup>());
Run Code Online (Sandbox Code Playgroud)

在RC2上,TestServer.CreateBuilder()已被删除.因此,我尝试使用以下代码创建一个新的TestServer:

var server = new TestServer(new WebHostBuilder().UseStartup<Startup>());
Run Code Online (Sandbox Code Playgroud)

我面临的问题是在RC2之后,运行时无法解析DI的依赖关系,因此它会在Startup类的Configure方法上抛出异常.但是,如果我启动实际服务器(而不是测试项目),系统会启动.抛出的异常如下:

  System.Exception : Could not resolve a service of type 'ShikashiBot.IShikashiBotManager' for the parameter 'botManager' of method 'Configure' on type 'ShikashiBot.Startup'.
Run Code Online (Sandbox Code Playgroud)

我目前正在为测试主机使用以下软件包: Microsoft.AspNetCore.TestHost": "1.0.0-rc2-final

c# asp.net integration-testing asp.net-core

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

通过使用传感器检测用户移动来节省定位服务的功率

我正在研究跟踪用户行踪的应用程序.为了节省电池,我想实现一个空闲区域,使位置管理器在GPS位置上拉低频率(甚至停止).一旦用户再次开始移动(通过加速度计和/或显着移动检测到),位置服务将拉出默认间隔.

一种方法是将空闲区域定义为minDistance参数LocationManager::requestLocationUpdates,但此处的其他用户建议它对电池消耗没有任何影响,并且文档指出位置管理器难以使用此标准节省电池:

但是,位置提供商使用minDistance参数更难以节省功耗,因此minTime应该是节省电池寿命的主要工具.

谷歌还建议使用重要的运动传感器来检测用户位置何时发生变化:

在高级别,重要的运动检测器用于降低位置确定的功耗.当定位算法检测到设备是静态的时,它们可以切换到低功率模式,在这种模式下,当用户改变位置时,它们依赖于显着的运动来唤醒设备.

这是否意味着位置管理器默认情况下使用重要的运动传感器,或者我是否需要激活或实施某些东西以使位置服务使用它?

加速度计怎么样?我的问题的很大一部分在于使用加速度计来检测用户何时开始移动会节省任何功率,因为​​使用加速度计将是另一个需要电源和回调处理的传感器.一些加速计传感器谷歌列为低功率,而有些则不是(包括重要的运动传感器).

是否可以通过将GPS置于睡眠状态来节省任何电池电量,然后使用传感器检测用户移动,这将再次唤醒GPS?

gps android location geolocation battery-saver

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

带有通用应用程序的系统托盘/任务栏图标/通知图标

是否有任何API可用于在通用应用程序中创建系统托盘图标,或者这是否禁止?在那种情况下,我应该使用什么,我能以某种方式将我的应用程序集成到行动中心或仅仅是MS吗?

windows win-universal-app

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

实体框架核心和多线程

在我的ASP.NET核心应用程序中,我有一些复杂的业务逻辑,涉及多个线程在HTTP请求范围之外进行数据库操作.从处理请求的同一线程访问数据库是微不足道的,但是当产生需要自己的DbContext的线程时,这变得乏味.由于DbContext本身不是线程安全的,除了从IServiceProvider获取DbContext之外,我还尝试创建一个新的DbContext及其选项.使用这两种方法,我得到以下异常:

尝试在配置上下文时使用上下文.DbContext实例不能在OnConfiguring内使用,因为此时仍在配置它.

我的印象是我以错误的方式处理这个问题而且我不应该像这样处理数据库连接.那么我怎么能在一个处理传入请求的单独线程中获取DbContext?

c# asp.net multithreading entity-framework asp.net-core

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

为什么const在void/int声明之后?

可能重复:
const(c ++)是可选的吗?
常数成员函数

我见过不同的帖子int a() const.我的问题是我们为什么要把const关键字放在那里?我知道它阻止我们对函数所在类的成员进行更改,但那又怎么样?

我们可以只写上面的函数的注释,并告诉编码器不作类本身在函数内部任何变化,但为什么我们真正关心的constvoid声明?在哪些情况下可能有更好的方法来使用,例如int a() const而不仅仅是int a(),编译的代码是否会发生变化?

c++ const function

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

Redis HGETALL时间复杂度的解释是什么

HGETALL该命令的时间复杂度根据文档O(N) 计算,其中 N 是哈希值的大小。在许多提到的情况下HGETALL,用户经常会被警告其时间复杂度,例如在这个答案中,但没有深入了解HGETALL幕后的功能以及为什么时间复杂度是这样的。那么为什么是 O(N) 呢?这与 Redis 存储哈希值的方式有关吗?是网络原因,还是只是受 CPU 限制?HGET时间复杂度为 O(1)并且不以任何方式依赖于大小,因此我可以将哈希集存储为与某些分隔符连接的一个值以提高性能吗?

redis

0
推荐指数
1
解决办法
1668
查看次数