小编Wai*_*Lee的帖子

如何在CI服务器上使用NuGet包与ASP.NET网站

我有许多ASP.NET Web窗体网站(没有.csproj文件的网站),我试图弄清楚如何最好地使用NuGet包.使用Visual Studio 2015时,通过UI添加NuGet包可以正常工作(站点根目录中有packages.config),并且构建会将二进制文件放在bin文件夹中.

问题是尝试通过MSBuild在TeamCity上构建项目.对于其他项目,我可以将NuGet.exe与restore命令一起使用(对csproj或sln文件),并正确下载包并将其包含在输出中.但是,这不适用于网站,因此编译因缺少文件而失败.

作为最后的手段,我可​​以编写一个自定义脚本/构建步骤来手动将程序集复制到bin文件夹,但我想避免这种情况.我错过了什么吗?有没有办法将NuGet用于Visual Studio之外的网站?

asp.net teamcity webforms vs-web-site-project nuget

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

为什么在这里使用Thread.MemoryBarrier?

浏览MEF源代码我发现了这篇文章.有人可以解释为什么MemoryBarrier需要锁定?

整个方法是:

public void SatisfyImportsOnce(ComposablePart part)
{
    this.ThrowIfDisposed();

    if (this._importEngine == null)
    {
        ImportEngine importEngine = new ImportEngine(this, this._compositionOptions);

        lock(this._lock)
        {
            if (this._importEngine == null)
            {
                Thread.MemoryBarrier();
                this._importEngine = importEngine;
                importEngine = null;
            }
        }
        if(importEngine != null)
        {
            importEngine.Dispose();
        }
    }
    this._importEngine.SatisfyImportsOnce(part);
}
Run Code Online (Sandbox Code Playgroud)

c# thread-safety

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

获取布尔值为true或false,而不是1或0

我正在使用MySql数据库,因此我在db模式中将列类型定义为Tinyint(1).

在我的ActiveRecord中,我设置了布尔验证器.保存逻辑按预期工作.

我现在想要的是,当我调用Yii2 REST服务时,返回布尔字段为true或false而不是1或0,因为在客户端,框架带有严格的比较(===),1与true不同.

当然,我可以在发送内容之前手动覆盖该值,或者在将其加载到模型之前在客户端上覆盖该值,但我希望有一个更清晰的解决方案.

yii2 yii2-model

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

使用内置的rbac还是自己构建?

以下场景:

我在Yii2的高级模板中有一个多租户Web应用程序.

此应用程序有三个门户:
- 后端
- 仪表板
- 前端

每个门户都有自己的用户表进行身份验证.
(-frontend_user,
-dashboard_user,
-backend_user)

前端和仪表板最终可以与租户的名称联系,例如:

当用户尝试登录仪表板或前端时,我必须检查他们是否有权登录.这通过列联表发生(例如:dashboard_user_tenant)

现在我想为仪表板应用程序构建一个rbac.

但是角色不应该挂在仪表板用户身上,而应该挂在dashboard_user_tenant(列联表)上,因为权限可以在每个租户的仪表板中更改.

Yii2有自己的rbac系统,但据我所知,到目前为止,它并不符合我的需要.

有没有机会定制Yii2的rbac或者更好地构建我自己的自定义解决方案?也许是我自己的组件?

我希望我的描述足够清楚:)

yii2 yii2-advanced-app

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

找一个gameObject的孩子

我有一个预制场景,我想访问该预制件的一个孩子,该预制件的结构是这样的:

PauseMenu
    UI_Resume
        TextField
        TextField2
            UI_Side_Back  <---- (I need this child)
    UI_Home
Run Code Online (Sandbox Code Playgroud)

transform.FindChild只返回第一级子项,并且loop该转换也是第一级子项中的循环:

foreach (Transform item in PooledPause.transform) {
        Debug.Log(item.name);
}
Run Code Online (Sandbox Code Playgroud)

我认为它需要是一种递归方法或其他东西.我怎么能找到那个孩子?

c# unity-game-engine

6
推荐指数
3
解决办法
6723
查看次数

HttpWebRequest端口耗尽

我们使用Windows服务对内部REST服务进行非常频繁的HTTP调用(每秒20-40次调用),但是注意在服务运行几分钟后获得响应的时间很长.

看看netstat,有很多端口具有"TIME_WAIT"状态,似乎我们可能用完了端口.

我们如何确保端口重用?

.net c# asp.net visual-studio

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

如何获取 .NET Core 中的 CPU 名称?

鉴于 WMI仅适用于Windows ,并且LinuxMac等操作系统没有注册表,如何获取.NET Core中的处理器名称?

我打算使以下方法(使用注册表)跨平台:

private static string GetProcessorName()
{
    var key = Registry.LocalMachine.OpenSubKey(@"HARDWARE\DESCRIPTION\System\CentralProcessor\0\");
    return key?.GetValue("ProcessorNameString").ToString() ?? "Not Found";
}
Run Code Online (Sandbox Code Playgroud)

您可以假设我可以在运行时知道我正在运行什么操作系统。

.net c# .net-core

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

多个同名内存数据库

关于这个答案,我试图通过设置UseInMemoryDatabase相同的名称来使多个上下文正常工作。下面的测试失败,第二个上下文为空。

我还需要做什么才能在内存数据库中共享相同的内容?

[Test]
public void MultipleContextTest()
{
    var firstContext = new FirstContext(new DbContextOptionsBuilder<FirstContext>().UseInMemoryDatabase("DB").Options);
    firstContext.Add(new Entity() {Name = "Test"});
    firstContext.SaveChanges();

    var secondContext = new SecondContext(new DbContextOptionsBuilder<SecondContext>().UseInMemoryDatabase("DB").Options);

    Assert.AreEqual(1, secondContext.Entity.Count());
}

public class FirstContext : DbContext
{
    public DbSet<Entity> Entity { get; set; }

    public FirstContext(DbContextOptions options) : base(options)
    {

    }
}

public class SecondContext : DbContext
{
    public DbSet<Entity> Entity { get; set; }

    public SecondContext(DbContextOptions options) : base(options)
    {

    }
}

public class Entity
{
    [Key]
    public …
Run Code Online (Sandbox Code Playgroud)

c# .net-core ef-core-2.2

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

输入失去对开始输入主题的关注

我正在尝试开发一个react-native应用程序,以设计一个自定义主题组件,并使用将该屏幕包含在主题中this.props.child。问题是屏幕上的输入字段失去焦点,并且在键入每个字符后键盘都被关闭,因为onChange我正在更新状态变量,这可能会重新呈现整个主题。

我已经尝试过在Github上提供许多解决方案,例如将唯一键传递给输入字段,但是它们不起作用。

这是我的主题组件的样子:

import Header from './header'
import footer from './footer'

export default class Theme extends Component {

    render() {
        //------this is my header component----
        <Header/>
        <View>
        //------this is my Body  in which i include my sceen content----
        {this.props.children}
        </View>

         //------this is my footer component----
        <footer/>
    }
}
Run Code Online (Sandbox Code Playgroud)

这是带有输入字段的屏幕:

import Theme from "../../components/Theme";
import { Input, Button } from "react-native-elements";

export default  class ChangePassword extends Component {

    constructor(props) {

    super(props);
    this.state = {

        inputs:{
            old_password : …
Run Code Online (Sandbox Code Playgroud)

react-native react-native-android react-native-ios

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

System.Drawing命名空间中不存在Point

我是C#的新手,并试图从教程中运行一个示例C#程序.

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

错误1名称空间'System.Drawing'中不存在类型或命名空间名称'Point'(您是否缺少程序集引用?)C:\ Users\Documents\Visual Studio 2012\Projects\HelloWorld\HelloWorld\Class1.cs 20 28 HelloWorld

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Drawing;

namespace HelloWorld
{
    class Hello
    {
        static void Main()
        {
            Nullable<bool> b = false;
            if (b.HasValue) Console.WriteLine("b is {0}", b.Value);
            else Console.WriteLine("b is not set");

            System.Drawing.Point p = new System.Drawing.Point(20, 30);

            Console.WriteLine(b);
            Console.WriteLine("Hello World");
            Console.WriteLine("Press any key to exit");

            Console.ReadKey();
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

c#

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