小编Myk*_*ola的帖子

DbContext实例不能在OnConfiguring内使用,因为此时仍在配置它

我正在尝试构建自定义视图定位系统.

public class myViewLocationExpander : IViewLocationExpander
{
    private myDBContext _context;

    public myViewLocationExpander (myDBContext context)
    {
        _context = context;
    }

    public IEnumerable<string> ExpandViewLocations(ViewLocationExpanderContext context, IEnumerable<string> viewLocations)
    {
        _context.Property.//..... //Error happened here
           Some other codes
    }
Run Code Online (Sandbox Code Playgroud)

在我的启动文件中

    public void ConfigureServices(IServiceCollection services)
    {
       //other codes

        services.AddMvc();

        services.Configure<RazorViewEngineOptions>(options =>
        {
            options.ViewLocationExpanders.Add(new myViewLocationExpander (new myDBContext()));
        });
Run Code Online (Sandbox Code Playgroud)

我的错误1:

处理请求时发生未处理的异常.InvalidOperationException:未配置任何数据库提供程序.在设置服务时,通过在DbContext类或AddDbContext方法中覆盖OnConfiguring来配置数据库提供程序.Microsoft.Data.Entity.Internal.DatabaseProviderSelector.SelectServices(ServiceProviderSource providerSource)

错误2:

EntityFramework.Core.dll中出现"System.InvalidOperationException"类型的异常但未在用户代码中处理附加信息:尝试在配置上下文时使用上下文.DbContext实例不能在OnConfiguring内使用,因为此时仍在配置它.

我怎样才能在一个类中使用dbcontext(我需要从DB获取一些信息),该类应Configure()放在Startup文件的方法上.

或者我可以把IViewLocation..放到另一个地方?

razorengine entity-framework-core asp.net-core-mvc asp.net-core

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

PHP chmod() 在服务器上不起作用

我彻底搜索了 stackoverflow 和其他在线资源,但没有任何效果。

基本上,我想将新内容写入服务器上的文件中。我正在使用以下代码来测试它。

代码:

error_reporting(E_ALL);
ini_set('display_errors',1);

$my_file = 'test_file.php';

$permission = chmod($my_file, 0775);
echo "Permission";
var_dump($permission);exit;
Run Code Online (Sandbox Code Playgroud)

chmod()它总是返回 false 并显示不允许的警告。

我不想为此使用 ftp 解决方案。那么,请告诉我不起作用的原因是什么chmod()以及是否有其他替代方法可以实现此目的?

php unix linux apache centos

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

正确安装Python的pyOpenSSL(Windows)

我正在尝试制作一个自动更新Google Plus电子表格的应用程序.为了做到这一点,我必须设置gspread,这也需要pyOpenSSL才能工作.没有它,它会抛出此错误:

CryptoUnavailableError:没有可用的加密库

使用pip,我输入命令:

pip install pyopenssl
Run Code Online (Sandbox Code Playgroud)

并导入使用:

from OpenSSL import SSL
Run Code Online (Sandbox Code Playgroud)

当我尝试运行代码时,收到以下错误:

ImportError:没有名为cryptography.hazmat.bindings.openssl.binding的模块

我已经尝试多次重新安装pyOpenSSL,并尝试重新安装加密依赖项(以及尝试安装以前版本的pyOpenSSL).

这个问题记录了几次,但我没有尝试的唯一解决方案是重新安装python或操作系统.

有什么建议?提前致谢.

python windows install openssl gspread

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

使用特征反演矩阵

我已经学会了如何使用Eigen找到矩阵的逆.但是当我发现数组的反函数是函数的输出时,我得到了一个错误

请求'x'中的成员'inverse',这是非类型'double**'

请帮帮我,使用c ++库查找矩阵的逆.

我写的代码是:

#include <iostream>
#include <armadillo>
#include <cmath>
#include <Eigen/Dense>

using namespace std;
using namespace arma;
using namespace Eigen;

int main()
{
    vec a;
    double ** x;

    double ** inv_x;
    a <<0 << 1 << 2 << 3 << 4; //input vector to function
    double ** f (vec a); //function declaration

    x= f(a);   // function call

    //inv_x=inv(x);

    cout << "The inverse of x is:\n" << x.inverse() << endl; // eigen command to find inverse
    return …
Run Code Online (Sandbox Code Playgroud)

c++ armadillo eigen

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

IAudioSessionNotification,任何人都有工作代码?

现在我已经安装了RC,我正在接受一些我在Windows 7 Beta中搞砸的实验代码.

基本上,我试图让IAudioSessionManager2IAudioSessionNotification共同努力,告知我创建的每个新的音频会话的小应用程序.

AudioListener(公共IAudioSessionNotification)中的Punchline代码:

//This is mostly lifted from MSDN
HRESULT STDMETHODCALLTYPE AudioListener::QueryInterface(REFIID riid, void** ppvObject)
{
    if(riid == __uuidof(IUnknown))
    {
        *ppvObject = (IUnknown*)this;
        return S_OK;
    }

    if(riid == __uuidof(IAudioSessionNotification))
    {
        *ppvObject = (IAudioSessionNotification*)this;
        return S_OK;
    }

    *ppvObject = NULL;

    return E_NOINTERFACE;
}

//m_hwnd, and WM_SESSION_CREATED are set to good values
//WM_SESSION_CREATEd via RegisterWindowMessage(...)
HRESULT STDMETHODCALLTYPE AudioListener::OnSessionCreated(IAudioSessionControl *pSession)
{
    PostMessage(m_hwnd, WM_SESSION_CREATED, (WPARAM)pSession, 0);

    return S_OK;
}
Run Code Online (Sandbox Code Playgroud)

代码注册我的听众:

BOOL RegisterMonitor(HWND target)
{
    BOOL …
Run Code Online (Sandbox Code Playgroud)

c++ windows com audio windows-7

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

使用qcompleter自动完成单词中间的片段

是否有一个QCompleter子类的示例可以为出现在单词中间的片段提供自动完成功能?

例如:

假设你有wordlist { "apple", "pear", "banana" }.当用户输入时'p',建议的自动完成应该是"apple""pear",但不是香蕉(因为"apple"并且"pear"都包含'p'); 默认自动填充仅建议"pear".

c++ qt qt4 qcombobox

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

GObject vs C++:GObj提供了哪些好处,以及它在速度/大小方面的比较?

它为面向对象语言(如C++)提供了什么?或者没有它可以使用GTK +?

GObject假设两个示例使用相同的编译器,对象的实现在可执行文件的大小和速度方面是否与C++ 的实现质量相似?或者是否存在一些权衡取舍,GObject因为它提供了额外的功能?

c++ gobject

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

Arduino作为具有多个i2c地址的从站

我想使用Arduino作为i2c奴隶.但我要求Arduino通过向多个i2c地址注册来充当多个设备.

这可能不是人们通常会做的事情,但这是我做这件事的原因:

我想用Arduino作为Spektrum遥测的遥测传感器.遥测接收器有一些i2c插头,连接到多个传感器(电流0x02,电压0x03,空速0x11等),每个传感器都具有遥测接收器所需的固定i2c地址.

我想使用一个 Arduino作为所有这些设备,通过注册所有上述地址,并适当地响应读数.

我可以使用每个传感器一个Arduino,这看起来很傻,因为我可以使用一个Arduino pro-mini执行所有这些读数.

我知道你可以使用注册Arduino

Wire.begin(0x02); 
Run Code Online (Sandbox Code Playgroud)

但是我需要类似的东西(伪代码)

Wire.begin(0x02, 0x03, 0x11);
Run Code Online (Sandbox Code Playgroud)

当收到请求时,我需要知道Arduino被查询的地址.

例如(伪代码)

void receiveEvent(byte address, int bytesReceived){
  if(address == 0x02){
    // Current reading
  }
  else if(address == 0x03){
    // Voltage reading
  }
  else if(address == 0x11){
    // Airspeed reading
  }
}
Run Code Online (Sandbox Code Playgroud)

任何意见,将不胜感激.

atmega arduino i2c

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

提取包含邮件的PST文件作为PSTMessage的附件

我正在尝试使用java-libpst-0.8.1提取PST文件, 请访问https://code.google.com/p/java-libpst/

在我的示例pst文件中,有几封邮件.在该pst文件的一个邮件中,附件也是邮件.在解析它时PSTMessage,它无法获取偶数,附件的名称.请找到示例代码.

 PSTMessage email;
 PSTAttachment attach;
 email = (PSTMessage) folder.getNextChild();
 while (email != null) {
    try {
        numberOfAttachments = email.getNumberOfAttachments();
        if (numberOfAttachments > 0) {
           for (int x = 0; x < numberOfAttachments; x++) {
               attach = email.getAttachment(x);
               try {
                    attachmentName = attach.getLongFilename();
Run Code Online (Sandbox Code Playgroud)

虽然该程序正在给出邮件附件的确切数量.但它无法提供附加邮件的名称或提取其内容.任何人都可以建议我该怎么做?

java pst

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

Heroku上的WebSocket ERR_CONNECTION_REFUSED

我正在尝试使用Heroku运行节点js应用程序WebSockets.但是,我无法解决此错误(如在Chrome浏览器中看到的那样)

与'wss://myappname.herokuapp.com:27225 /'的WebSocket连接失败:连接建立错误:net :: ERR_CONNECTION_REFUSED

我使用'wss',因为Heroku在HTTPS上运行.

我的客户端代码是:

$.get("https://myappname.herokuapp.com/port",function(data){
    port = data;
    console.log(data);
    host = 'wss://myappname.herokuapp.com:' + port + '/';
    ws = new WebSocket(host);
  });
Run Code Online (Sandbox Code Playgroud)

我的服务器端代码是:

var WebSocketServer = require("ws").Server
var fs = require('fs');
var express = require('express'); 
var app = express();
var http = require('http');
var port = process.env.PORT || 5000;
var request = require('request');

var server = http.createServer(app);
var serverOnPort = server.listen(port);

console.log("Server listening on port ",port);

var wss = new WebSocketServer({server: serverOnPort});
console.log("websocket server created");
Run Code Online (Sandbox Code Playgroud)

任何帮助,将不胜感激. …

javascript heroku websocket node.js

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