小编vid*_*uch的帖子

使用Visual Studio中的NLog在多个项目中设置C#解决方案

我在Visual Studio 2012中的解决方案目前包含两个项目:

  • DLL
  • WPF应用程序(需要DLL的方法)

DLL和WPF应用程序都NLog用于日志记录.目前,每个项目都包含NLogDLL本身.

这是我不明白的:

  1. 我似乎没有必要NLog在每个项目中包含相同的DLL.
  2. 但是,DLL应该可以在其他解决方案中重用,即NLogDLL必须以某种方式包含在DLL项目中.

什么是设置Visual Studio解决方案和/或项目的适当方法?

c# dll nlog project visual-studio-2012

11
推荐指数
2
解决办法
6955
查看次数

index.html中有多个脚本链接

我在Angular有一个小项目.我试图以一种单一责任的方式保持一切,我对我的应用程序结构非常满意.我觉得唯一不太好看的是index.html.所有js文件都包含在文件的底部,我不喜欢它的外观.我正在添加更多文件(控制器,服务等),列表可能会长得很长.

所以我的问题是:这是正常的,索引文件包含所有这些还是有办法将所有这些都移到一个文件中并在index.html中引用它?

<html>
<head>
    ...
</head>
<body>
    ...

    ...


<script src="assets/js/angular.js"></script>
<script src="assets/js/angular-route.js"></script>
<script src="assets/js/angular-touch.js"></script>
<script src="assets/js/angular-sanitize.js"></script>
<script src="assets/js/angular-animate.min.js"></script>
<script src="assets/js/jquery-2.1.3.min.js"></script>
<script src="assets/js/bootstrap.min.js"></script>

<script src="app/app.js"></script>
<script src="app/app.routes.js"></script>
<script src="controllers/controllerOne.js"></script>
<script src="controllers/controllerTwo.js"></script>
<script src="controllers/controllerThree.js"></script>
<script src="directives/directiveOne.js"></script>
<script src="directives/directiveTwo.js"></script>
<script src="services/serviceOne.js"></script>
<script src="services/serviceTwo.js"></script>
<script src="services/serviceThree.js"></script>

</body>
</html>
Run Code Online (Sandbox Code Playgroud)

2015年4月4日更新

我最终使用了Gulp.对于那些在这方面寻求帮助的人,我已经关注了这个小教程:https://medium.com/@dickeyxxx/best-practices-for-building-angular-js-apps-266c1a4a6917

html angularjs gulp

10
推荐指数
1
解决办法
4708
查看次数

自动生成的默认连接字符串与手动添加的字符串

假设我使用Entity Framework Code First创建了简单的WPF应用程序来创建数据库,连接到它并显示一些数据.从开始我不想担心连接字符串,所以在通过Nuget添加entityframework引用后,我将获得自动生成的app.config,如下所示:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <configSections>
    <!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
  </configSections>
  <entityFramework>
    <defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" />
    <providers>
      <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
      </providers>
  </entityFramework>
</configuration>
Run Code Online (Sandbox Code Playgroud)

我将运行test并观察连接字符串:

var strings = ConfigurationManager.ConnectionStrings;
Run Code Online (Sandbox Code Playgroud)

结果:

[0] = {data source=.\SQLEXPRESS;Integrated Security=SSPI;attachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true}
Run Code Online (Sandbox Code Playgroud)

由于我想定义自己的连接字符串,我将把它添加到我的app.config中:

<connectionStrings>
    <add name="MyContext" connectionString="data ource=(LocalDb)\v11.0;AttachDbFilename=|DataDirectory|\myDb.mdf;Integrated Security=True" providerName="System.Data.SqlClient" />
</connectionStrings>
Run Code Online (Sandbox Code Playgroud)

因此,当我再次运行测试并观察连接时,我可以看到现在有两个:

[0] = {data source=.\SQLEXPRESS;Integrated Security=SSPI;attachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true}
[1] = {data source=(LocalDb)\v11.0;AttachDbFilename=|DataDirectory|\myDb.mdf;Integrated Security=True}
Run Code Online (Sandbox Code Playgroud)

为什么我能看到两个连接字符串?如果第一个是默认的,一旦我创建了它,是否应该忘记它?

谢谢

c# entity-framework connection-string

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

代表和回调

在委托的上下文中,术语回调是否意味着" 代理委托它为另一个代表工作以完成某项任务 "?

示例:( 根据我的理解,我已经实现了回调,如果错误则纠正我)

namespace Test
{
    public delegate string CallbackDemo(string str);  

    class Program
    {
        static void Main(string[] args)
        {
            CallbackDemo handler = new CallbackDemo(StrAnother);
            string substr = Strfunc(handler);
            Console.WriteLine(substr);
            Console.ReadKey(true);
        }

        static string Strfunc(CallbackDemo callback)
        {
           return callback("Hello World");   
        }

        static string StrAnother(string str)
        {
            return str.Substring(1, 3).ToString();
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

请根据需要提供示例.

c# callback

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

Font Awesome的旋转旋转错误的中心

我正在使用此切换菜单模板:http://bootsnipp.com/snippets/featured/navigation-sidebar-with-toggle.

我用字体awesome替换了bootstraps glyphicon

fa fa-cog fa-spin
Run Code Online (Sandbox Code Playgroud)

但是齿轮旋转出边界,好像中心与文本不在同一条线上.我可以看到大小有一些问题,但我无法弄清楚在哪里,任何想法我做错了什么?

JSFiffle:https://jsfiddle.net/vidriduch/mpw2r8h2/1/

css font-awesome

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

无法使用 SignalR 读取未定义的属性“客户端”

我一整天都在为此工作,但没有运气。我也尝试过(几乎)每一个 SO 问题,但我没有让它起作用......

我正在使用非常简单的 SignalR 推送消息和单独的简单前端运行 web api 来显示此推送消息。在我的情况下,推送消息是不断变化的数字。

索引.html

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>test app</title>

    <script src="scripts/jquery-2.1.4.js"></script>
    <script src="scripts/jquery.signalR-2.2.0.js"></script>

    <script src="/signalr/hubs"></script>
</head>
<body>
    <div id="testElm">TEST: </div>

    <script type="text/javascript">
        $(document).ready(function () {

            $.connection.hub.url = "http://localhost:55833/signalr";
            var hub = $.connection.displayHub;

            hub.client.pushMessage = function (response) {

                $('#testElm').text(response);
            };

            $.connection.hub.start();
        });
    </script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

我的枢纽班

public class DisplayHub : Hub
{
    public DisplayHub() : this(GlobalHost.ConnectionManager.GetHubContext<DisplayHub>().Clients) { }

    public DisplayHub(IHubConnectionContext<dynamic> clients)
    {
    }

    public void PushMessage(string message)
    {
        // generate random number and …
Run Code Online (Sandbox Code Playgroud)

signalr asp.net-web-api signalr-hub

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

为什么#!在我的角度应用程序的网址中

由于某种未知的原因,我有'#!' 在visual studio 2015中调试时添加到我的应用程序URL.

网址看起来像这样

http://localhost:58394/#!/customers
http://localhost:58394/#!/
Run Code Online (Sandbox Code Playgroud)

我已经搜索了所有应用程序,如果这是某种拼写错误,但我无法弄清楚这是从哪里来的.

我可以在ASP.NET WEB API以及ASP.NET CORE WEB API中看到...

对于前端我使用角度和角度路线1.6.0

这有什么想法来自哪里?

我没有使用html5mode也没有基本标签,我很高兴#现在在那里,我只是不明白为什么感叹号(!)在那里......

此应用程序不会在Web上部署,也不会使用任何可能使用#的外部服务!任何跟踪或其他任何内容的表示法.

最近的感叹号开始出现,所以我猜这是由我正在使用的一些库引起的.

我只是想知道为什么'!'在那里以及它在那里强迫这个感叹的库.

asp.net asp.net-web-api angularjs asp.net-core

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

使用ASP .NET Core的查询参数路由

我想使用url查询参数代替使用.net核心API的path参数。

控制者

[Route("api/[controller]/[action]")]
public class TranslateController : Controller
{
    [HttpGet("{languageCode}")]
    public IActionResult GetAllTranslations(string languageCode)
    {
        return languageCode;
    }
}
Run Code Online (Sandbox Code Playgroud)

startup.cs仅使用默认设置

public void ConfigureServices(IServiceCollection services)
{
    // Add framework services.
    services.AddMvc()
            .AddJsonOptions(jsonOptions =>
            {
                jsonOptions.SerializerSettings.NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore;
                jsonOptions.SerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver();
                jsonOptions.SerializerSettings.ReferenceLoopHandling = Newtonsoft.Json.ReferenceLoopHandling.Ignore;
            });

    services.AddLogging();
    services.AddSingleton<IConfiguration>(Configuration);

    services.AddSwaggerGen(c =>
    {
        c.SingleApiVersion(new Info
        {
            Version = "v1",
            Title = "Translate API",
            Description = "bla bla bla description",
            TermsOfService = "bla bla bla terms of service"
        });
    });
}

// This method gets …
Run Code Online (Sandbox Code Playgroud)

asp.net-core asp.net-core-routing

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

docker如何自动为容器分配和回收端口

当我运行 docker 命令时

docker run -d -P nginx
Run Code Online (Sandbox Code Playgroud)

docker 将运行并自动为 nginx 的端口 80 分配端口。如果我停止映像并再次启动它,则会为 nginx 分配一个新端口(通常是下一个可用端口)。

据我发现,端口分配的范围基于临时端口范围,在 docker 情况下默认为 32768 - 61000。(https://docs.docker.com/v17.09/engine/userguide/networking/default_network/binding / )

docker 如何以及何时回收端口?它会返回到 32768 或最近的可用值吗?

docker

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

如何让angularJS routeProvider在路由更改之前执行操作?

假设我有这个配置:

app.config(['$routeProvider',
  function($routeProvider) {
    $routeProvider
        .when('/', { 
            templateUrl: 'app/partials/index.html',
            controller: 'defaultCtrl'
        })
        .when('/other', {
            templateUrl: 'app/partials/other.html',
            controller: 'errorCtrl'
        })
        .otherwise({ 
            templateUrl: 'app/partials/404.html'
        });
  }
]);
Run Code Online (Sandbox Code Playgroud)

我正在寻找一个地方在路由器调用路由之前做一些基本的,通用的维护代码.假设console.clear()每次路由更改时我都想清除控制台日志.如何以及在哪里成为代码的最佳位置?

javascript angularjs

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