小编Max*_*ler的帖子

ChannelFactory在端点上没有地址,为什么?

当我创建ChannelFactory的新实例时:

var factory = new ChannelFactory<IMyService>();
Run Code Online (Sandbox Code Playgroud)

并且我创建了一个新的通道,我有一个例外,说Endpoint的地址为null.

我在web.config中的配置如上所述,一切都是应该的(特别是端点的地址).

如果我创建一个新的MyServiceClientBase,它会从我的通道工厂加载所有配置:

var factoryWithClientBase = new MyServiceClientBase().ChannelFactory;
Console.WriteLine(factoryWithClientBase.Endpoint.Address); //output the configuration inside the web.config


var factoryWithChannelFactory = new ChannelFactory<IMyService>();
Console.WriteLine(factoryWithChannelFactory.Endpoint.Address); //output nothing (null)
Run Code Online (Sandbox Code Playgroud)

为什么?

.net configuration wcf c#-3.0

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

如何识别变量是类还是对象

我正在更低层次上编写一个小框架,用于在Python中为我的项目创建测试夹具.在这里我想知道一个特定的变量是某个类的实例还是一个类本身,如果它是一个类,我想知道它是否是我的框架定义的某个类的子类.我该怎么做?

class MyBase(object):
    pass

class A(MyBase):
    a1 = 'Val1'
    a2 = 'Val2'

class B(MyBase):
    a1 = 'Val3'
    a2 = A
Run Code Online (Sandbox Code Playgroud)

我想知道属性a1和a2是类/类型的实例(a1是B中的字符串类型)还是类对象本身(即a2是B中的A).你能帮我解决一下这个问题吗?

python

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

在MVC 3中使用Razor的自定义库

所以我正在为MVC 3开发一个内部库,我想将它添加到我的项目中.

我把它添加到我的web.config中.我添加了程序集并将其添加到pages - > namespaces部分和... no.不行.

我试过重新编译等等......但Razor完全不喜欢它.这不是一个智能感知问题......如果我使用我定义的命名空间,网站就无法运行.

我使它工作的唯一方法是使用以下语句:

@using Sample.Helpers
Run Code Online (Sandbox Code Playgroud)

我不想在页面中使用它.我希望能够将它部署到许多项目并将其添加到web.config绝对是可行的方法.

有人遇到过这个问题吗?

c# asp.net-mvc razor asp.net-mvc-3

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

从控制台应用程序隐藏控制台窗口

我有一个使用控制台的应用程序,但我更改了所有代码以写入文件而不是控制台.我现在希望控制台在运行应用程序时停止显示.我该怎么做呢?我不知道什么是首先打开控制台,即使代码中没有写入任何内容.

我查看了应用程序引用,但找不到正在引用的System.Console.我虽然禁用它会修复它或指出我正确的方向有错误.我不知道还能在哪里看.

我在网上找到的所有其他内容都是关于隐藏控制台的.我希望它不会出现在第一位.

c#

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

调用两个不同的存储库时出现“ ConnectionString尚未初始化”错误

我使用ASP.NET 5/ ASP.NET CoreEF7/EF Core

我有以下使用ASP.NET 5的依赖项注入的存储库类

using Microsoft.Data.Entity;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;

namespace MyNamespace
{
    public class PersonRepository :IPersonRepository
    {
        private MyDbContext _db;

        public MyRepository(MyDbContext db) 
        {
            _db = db;
        }

        public async Task<IEnumerable<Person>> Search()
        {
            var table = from p in _db.Persons
                        select p;

            return await table.ToListAsync();
        }            
    }
    public interface IPersonRepository
    {
        Task<IEnumerable<Person>> Search();
    }
}
Run Code Online (Sandbox Code Playgroud)

从ASP.NET MVC控制器调用,我可以成功调用search并获取数据。

public class PersonController : Controller
{
    private IPersonRepository _personRepository;

    public PersonController …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc entity-framework dependency-injection repository-pattern asp.net-core-mvc

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

不能使用Asp MVC 6 Web Api的HttpClient

我尝试编写简单的代码:

 public async Task<string> GetData(String labelName)
    {           
        using (var client = new HttpClient())
        {
            var uri = new Uri(@"https://example.com/over/search_field?=search_label=" + labelName);

            var response = await client.GetAsync(uri).ConfigureAwait(false);
            var textResult = await response.Content.ReadAsStringAsync();
            return textResult;
        }
    }
Run Code Online (Sandbox Code Playgroud)

在project.json:

 {
"webroot": "wwwroot",
"version": "1.0.0-*",
"dependencies": {
  "Microsoft.AspNet.IISPlatformHandler": "1.0.0-beta8",
 "Microsoft.AspNet.Mvc": "6.0.0-beta8",
 "Microsoft.AspNet.Server.Kestrel": "1.0.0-beta8",
 "Microsoft.AspNet.StaticFiles": "1.0.0-beta8",

 "Microsoft.Framework.Logging": "1.0.0-beta8",
 "Microsoft.Framework.Logging.Console": "1.0.0-beta8",
 "Microsoft.Framework.Logging.Debug": "1.0.0-beta8",
 "Microsoft.Net.Http": "2.2.22"
  },      
 "frameworks": {
  "dnx451": {
    "dependencies": {
       "Microsoft.AspNet.WebApi.Client": "5.2.3",
      "Microsoft.AspNet.WebApi.Owin": "5.2.3",
      "System.Net.Http": "4.0.1-beta-23409"


   },
   "frameworkAssemblies": {
     "System.Net": "4.0.0.0",
     "System.Net.Http": "4.0.0.0"
   } …
Run Code Online (Sandbox Code Playgroud)

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

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

无法转换为泛型类型c#

我有以下场景

public class A
{
}

public class BA : A
{

}

//other subtypes of A are defined

public class AFactory
{
    public T Create<T>() where T : A
    {
        //work to calculate condition
        if (condition)
            return new BA();
        //return other subtype of A
    }
}
Run Code Online (Sandbox Code Playgroud)

抛出以下编译错误:

错误CS0029无法将类型'B'隐式转换为'T'

怎么了?

c# generics

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

有没有办法将其压缩成更少的线?HTML

我要压缩的代码:

document.getElementById("costA").innerHTML = currentCost[0];
document.getElementById("costB").innerHTML = currentCost[1];
document.getElementById("costC").innerHTML = currentCost[2];
document.getElementById("costD").innerHTML = currentCost[3];
document.getElementById("costE").innerHTML = currentCost[4];
document.getElementById("costF").innerHTML = currentCost[5];
document.getElementById("costG").innerHTML = currentCost[6];
document.getElementById("costH").innerHTML = currentCost[7];
document.getElementById("amountA").innerHTML = building[0];
document.getElementById("amountB").innerHTML = building[1];
document.getElementById("amountC").innerHTML = building[2];
document.getElementById("amountD").innerHTML = building[3];
document.getElementById("amountE").innerHTML = building[4];
document.getElementById("amountF").innerHTML = building[5];
document.getElementById("amountG").innerHTML = building[6];
document.getElementById("amountH").innerHTML = building[7];
document.getElementById("bonusA").innerHTML = currentBonuses[0];
document.getElementById("bonusB").innerHTML = currentBonuses[1];
document.getElementById("bonusC").innerHTML = currentBonuses[2];
document.getElementById("bonusD").innerHTML = currentBonuses[3];
document.getElementById("bonusE").innerHTML = currentBonuses[4];
document.getElementById("bonusF").innerHTML = currentBonuses[5];
document.getElementById("bonusG").innerHTML = currentBonuses[6];
document.getElementById("bonusH").innerHTML = currentBonuses[7];
Run Code Online (Sandbox Code Playgroud)

我看到三个主要部分看起来可以浓缩.或许,我也许更喜欢能够在不改变太多代码的情况下添加或减少任意数量的建筑物的方法.

html javascript

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