小编Gil*_*rdo的帖子

JavaFX - setVisible不会"隐藏"该元素

在JavaFX中,如果我有一个包含2个VBox元素的场景,并且每个元素VBox都有多个元素Label.
如果我将顶部设置VBox隐形,为什么底部VBox 不会移动到顶部的场景VBox

VBox看不见的,但我希望其他对象移动到它的位置.

我正在使用FXML来加载我的控件.

java javafx javafx-2 fxml javafx-8

72
推荐指数
3
解决办法
5万
查看次数

使用.NET Core操作图像

我已将我的项目从.NET 4.5更新到.NET Core(使用ASP.NET Core).我在之前的版本中有一些非常简单的代码,它使用位图对象System.Drawing来调整图像大小.

据我所知System.Drawing,不能在.NET Core中使用,因为它不是跨平台的,但可以使用什么呢?

我用Google搜索了一下,找不到任何东西.我唯一能找到的就是这篇文章,它上面没有任何代码.

c# system.drawing .net-core asp.net-core

60
推荐指数
3
解决办法
4万
查看次数

将响应标头添加到ASP.NET核心中间件

我想像这样在我的ASP.NET Core WebApi中添加一个处理时中间件

public class ProcessingTimeMiddleware  
{
    private readonly RequestDelegate _next;

    public ProcessingTimeMiddleware(RequestDelegate next)
    {
        _next = next;
    }

    public async Task Invoke(HttpContext context)
    {
        var watch = new Stopwatch();
        watch.Start();

        await _next(context);

        context.Response.Headers.Add("X-Processing-Time-Milliseconds", new[] { watch.ElapsedMilliseconds.ToString() });
    }
}
Run Code Online (Sandbox Code Playgroud)

但这样做会引发异常

 System.InvalidOperationException: Headers are readonly, reponse has already started.
Run Code Online (Sandbox Code Playgroud)

如何在响应中添加标头?

c# asp.net-core

34
推荐指数
4
解决办法
3万
查看次数

实体框架6和工作单元......何时何地?它就像ado.net中的交易一样吗?

创建一个新的MVC项目,并喜欢数据层中的存储库的想法,所以我已经实现了它们.我还创建了一个Service层来处理所有业务逻辑和验证,该层依次使用适当的存储库.像这样的东西(我使用Simple Injector注入)

DAL LAYER

public class MyRepository {

    private DbContext _context;
    public MyRepository(DbContext context) {
        _context = context;
    }    

    public MyEntity Get(int id)
    {
        return _context.Set<MyEntity>().Find(id);
    }

    public TEntity Add(MyEntity t)
    {
        _context.Set<MyEntity>().Add(t);
        _context.SaveChanges();
        return t;
    }

    public TEntity Update(MyEntity updated, int key)
    {
        if (updated == null)
            return null;

        MyEntity existing = _context.Set<MyEntity>().Find(key);
        if (existing != null)
        {
            _context.Entry(existing).CurrentValues.SetValues(updated);
            _context.SaveChanges();
        }
        return existing;
    }

    public void Delete(MyEntity t)
    {
        _context.Set<MyEntity>().Remove(t);
        _context.SaveChanges();
    }
}
Run Code Online (Sandbox Code Playgroud)

服务层

public class MyService {
    private …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc entity-framework unit-of-work

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

UseSqlServer方法缺少MVC 6

我想实现实体框架7 MVC 6,并在此页上在这里它说做

services.AddEntityFramework()
    .AddSqlServer()
    .AddDbContext<MusicStoreContext>(options =>
                        options.UseSqlServer(Configuration["Data:DefaultConnection:ConnectionString"]));
Run Code Online (Sandbox Code Playgroud)

但对我来说,这个UseSqlServer方法不可见?有谁知道如何让它可见?或者这是配置实体框架的旧方法?

我的startup.cs文件看起来像这样

using FluentValidation;
using Microsoft.AspNet.Builder;
using Microsoft.AspNet.Hosting;
using Microsoft.Framework.ConfigurationModel;
using Microsoft.Framework.DependencyInjection;

namespace me.namespace.project
{
    public class Startup
    {
        public static IConfiguration Configuration { get; set; }

        public Startup(IHostingEnvironment env)
        {
            // Setup configuration sources.
            Configuration = new Configuration()
                .AddJsonFile("config.json")
                .AddEnvironmentVariables();
        }

        public void ConfigureServices(IServiceCollection services)
        {
            services.AddMvc();

            // entity framework
            services.AddEntityFramework()
                .AddSqlServer()
                .AddDbContext<DataContext>();

        }
    }
}
Run Code Online (Sandbox Code Playgroud)

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

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

依赖注入(使用SimpleInjector)和OAuthAuthorizationServerProvider

新的依赖注入,所以这可能是一个简单的问题,但我已经尝试过,无法弄清楚,我正在使用Simple Injector.

我有一个完全使用SimpleInjector的WebApi,现在我想使用OAuth实现安全性.

为此,我开始学习本教程,这非常有用,但不使用Dependancy Injection

http://bitoftech.net/2014/06/01/token-based-authentication-asp-net-web-api-2-owin-asp-net-identity/

我的global.asax文件看起来像这样,设置依赖注入(完美工作)

protected void Application_Start()
{
    SimpleInjectorConfig.Register();

    GlobalConfiguration.Configure(WebApiConfig.Register);
}
Run Code Online (Sandbox Code Playgroud)

我创建了一个Startup.Auth.cs文件来配置OAuth

public class Startup
{
    public void Configuration(IAppBuilder app)
    {
        var OAuthServerOptions = new OAuthAuthorizationServerOptions()
        {
            AllowInsecureHttp = true,
            TokenEndpointPath = new PathString("/token"),
            AccessTokenExpireTimeSpan = TimeSpan.FromDays(1),
            Provider = new MyAuthorizationServerProvider() // here is the problem
        };

        // Token Generation
        app.UseOAuthAuthorizationServer(OAuthServerOptions);
        app.UseOAuthBearerAuthentication(new OAuthBearerAuthenticationOptions());
    }
}
Run Code Online (Sandbox Code Playgroud)

现在我在上面评论过,MyAuthorizationServerProvider就是问题所在.它需要我通常注入的IUserService参数.我不想清空构造函数,因为我的IUserService也注入了一个存储库.这是文件

public class ApiAuthorizationServerProvider : OAuthAuthorizationServerProvider
{
    private IUserService _service;
    public ApiAuthorizationServerProvider (IUserService service) 
    {
         _service = service;
    }

    public override async …
Run Code Online (Sandbox Code Playgroud)

c# asp.net asp.net-mvc dependency-injection simple-injector

17
推荐指数
3
解决办法
7118
查看次数

拒绝加载脚本,因为它违反了以下内容安全策略指令:"style-src'self''unsafe-inline'

我正在使用MVC6(asp.net 5)使用angular并尝试从我的代码在发布模式下运行时从CDN位置加载脚本,但由于某种原因脚本永远不会加载.

我已经读过你需要在你的HTML文件中添加一个元标记,我已经这样做了.

<meta http-equiv="Content-Security-Policy" content="default-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' https://cdnjs.cloudflare.com; style-src 'self' https://ajax.aspnetcdn.com; font-src 'self' http://netdna.bootstrapcdn.com" />
Run Code Online (Sandbox Code Playgroud)

在我的Index.cshtml上,我有这个.

<environment names="Staging,Production">
    <script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.4.8/angular.min.js"
        asp-fallback-src="~/lib/angular/angular.min.js"
        asp-fallback-test="window.angular">
    </script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/angular-ui-router/0.2.15/angular-ui-router.min.js"
        asp-fallback-src="~/lib/angular-ui-router/release/angular-ui-router.js"
        asp-fallback-test="window.angular && window.angularUiRouter">
    </script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/angular-local-storage/0.2.2/angular-local-storage.min.js"
        asp-fallback-src="~/lib/angular-local-storage/dist/angular-local-storage.js"
        asp-fallback-test="window.angular && window.localStorage">
    </script>
Run Code Online (Sandbox Code Playgroud)

但他们永远不会加载.我尝试使用IISExpress运行代码并使用该DNX Web命令.

我有这篇文章,这就是我如何创建META标签,但不确定为什么它不起作用.我在Chrome中试过这个,在控制台下,我只是遇到了错误

在此输入图像描述

html javascript c# asp.net asp.net-mvc

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

当相同的url加载不同的参数时,Angular2路由器2.0.0不重新加载组件?

我在.routing.ts文件中有这个

export const routing = RouterModule.forChild([
{
    path: 'page/:id',
    component: PageComponent
}]);
Run Code Online (Sandbox Code Playgroud)

我的PageComponent文件检查id参数并相应地加载数据.在以前版本的路由器中,如果我从/ page/4转到/ page/25,页面将"重新加载"并且组件将更新.

现在,当我尝试导航到/ page/X,其中X是id时,它只会在第一次加载,然后url会更改,但组件不会再次"重新加载".

是否需要传递一些东西来强制我的组件重新加载,并调用ngOnInit事件?

html javascript angular2-routing angular

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

没有数据库提供程序配置EF7

使用Entity Framework 7和MVC6时,我似乎收到此错误消息

System.InvalidOperationException未配置任何数据库提供程序.在设置服务时,通过在DbContext类或AddDbContext方法中覆盖OnConfiguring来配置数据库提供程序.

我相信我已经做了我应该做的一切,所以也许它是一个错误.我使用的是Entity Framework的7.0.0-beta7版本.

我已经设置了我的DbContext,一个接口,所以我可以模拟DbContext(在EntityFramework 6中需要进行单元测试).我的服务将接口作为构造函数,我在MVC 6中设置了DI.

在我的Startup.cs文件中,我有以下内容

public void ConfigureServices(IServiceCollection services)
{
    // entity framework
    services.AddEntityFramework()
        .AddSqlServer()
        .AddDbContext<MyDbContext>(options =>
            options.UseSqlServer(Configuration["Data:MyConnection:ConnectionString"])
        );

    // Add MVC services to the services container.
    services.AddMvc();

    // new context on each request
    services.AddScoped<IMyDbContext, MyDbContext>();
}
Run Code Online (Sandbox Code Playgroud)

我已经检查了我的connectionString,并且返回了一个有效的连接.我还检查了我的服务,正在注入该对象,并且它不是null,因此应该全部工作.

我的config.json文件看起来像这样

{
    "Data": {
        "MyConnection": {
            "ConnectionString": "Server=(local);Database=XXXX;Trusted_Connection=True;"
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我的DbContext不会覆盖OnConfiguring方法,因为我认为不需要它,因为我正在完成上述所有操作?我对吗?我错过了什么?看了很多不同的网站,我猜有些人正在使用旧代码,因为有些方法不存在,而其他网站与我拥有的相同.

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

13
推荐指数
1
解决办法
6703
查看次数

什么时候"太多"异步并等待?所有方法都应该返回Task吗?

我正在构建一个项目并使用async和await方法.每个人都说异步应用程序是从头开始构建的,那么你真的应该有任何同步方法吗?如果所有方法都返回一个Task,那么你可以异步使用它吗?

让我们举一个简单的例子,我在使用Sql将数据加载到集合中,这里有一些代码.

此代码使用ExecuteQueryAsync方法从表中加载数据,该方法GetQuery构造SQL,但调用GetTableColumns.生成并执行SQL后,我遍历集合并通过调用填充每个对象GetDataFromReader.

我的非异步方法应该是异步的吗?我是否在考虑过多的编程同步方式并缺少某些东西?

public async Task<ICollection<MyObject>> ExecuteQueryAsync(Module module, List<SqlParameter> parameters)
{
    var result = new Collection<MyObject>();
    var query = GetQuery(module);

    using (var conn = new SqlConnection(_context.Database.Connection.ConnectionString))
    {
        await conn.OpenAsync();

        using (var cmd = new SqlCommand(query, conn))
        {
            if (parameters != null)
                cmd.Parameters.AddRange(parameters.ToArray());

            using (var dr = await cmd.ExecuteReaderAsync())
            {
                while (await dr.ReadAsync())
                {
                    result.Add(GetDataFromReader(module, dr));
                }

            }
        }

    }

    return result;
}

public string GetQuery(Module module)
{
    return "SELECT " + …
Run Code Online (Sandbox Code Playgroud)

.net c# asp.net asynchronous async-await

10
推荐指数
2
解决办法
5087
查看次数