问题列表 - 第1011页

.NET通用方法问题

我正在尝试掌握.NET Generics的概念,并在我自己的代码中实际使用它们,但我一直遇到问题.

有人可以尝试向我解释为什么以下设置无法编译?

public class ClassA
{
    ClassB b = new ClassB();

    public void MethodA<T>(IRepo<T> repo) where T : ITypeEntity
    {
        b.MethodB(repo);
    }
}

public class ClassB
{
    IRepo<ITypeEntity> repo;

    public void MethodB(IRepo<ITypeEntity> repo)
    {
        this.repo = repo;
    }
}
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:
无法从IRepo <'T>转换为IRepo <'ITypeEntity>

使用IRepo <'DetailType>对象参数调用MethodA,其中DetailType继承自ITypeEntity.

我一直认为这应该编译,因为我将MethodA中的T限制为ITypeEntity类型.

任何想法或反馈都会非常有帮助.

谢谢.

编辑:尼克R有一个很好的建议,但不幸的是在我的背景下,我没有选择制作ClassA Generic.但是ClassB可能会.

.net c# generics

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

如何在JavaScript中将"对象"转换为函数?

JavaScript允许将函数视为对象 - 如果首先将变量定义为函数,则可以随后向该函数添加属性.你如何反过来,并为"对象"添加一个功能?

这有效:

var foo = function() { return 1; };
foo.baz = "qqqq";
Run Code Online (Sandbox Code Playgroud)

此时,foo()调用该函数,并foo.baz具有值"qqqq".

但是,如果首先执行属性赋值部分,那么如何随后将函数赋值给变量?

var bar = { baz: "qqqq" };
Run Code Online (Sandbox Code Playgroud)

我现在可以做什么来安排bar.baz值"qqqq" bar()调用该函数?

javascript properties function

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

C++处理非常大的整数

我使用RSA算法进行加密/解密,为了解密文件,你必须处理一些非常大的值.更具体地说,像

P = C^d % n
  = 62^65 % 133
Run Code Online (Sandbox Code Playgroud)

现在这真的是唯一不适当的计算.我尝试过使用Matt McCutchen的BigInteger库,但是在链接过程中我遇到了很多编译错误,例如:

encryption.o(.text+0x187):encryption.cpp: undefined reference to `BigInteger::BigInteger(int)'

encryption.o(.text+0x302):encryption.cpp: undefined reference to `operator<<(std::ostream&, BigInteger const&)'

encryption.o(.text$_ZNK10BigIntegermlERKS_[BigInteger::operator*(BigInteger const&) const]+0x63):encryption.cpp: undefined reference to `BigInteger::multiply(BigInteger const&, BigInteger const&)'
Run Code Online (Sandbox Code Playgroud)

所以我想知道处理RSA算法产生的真正大整数的最佳方法是什么.

我听说有可能将你的变量声明为双倍长,所以......

long long decryptedCharacter;
Run Code Online (Sandbox Code Playgroud)

但我不确定可以存储多大的整数.


好吧,例如,我尝试使用dev C++编译并运行以下程序:

#include iostream

#include "bigint\BigIntegerLibrary.hh"

using namespace std;

int main()
{
    BigInteger a = 65536;
    cout << (a * a * a * a * a * a * a * a);
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

然后我得到了那些错误.

Derek,我认为通过包含BigIntegerLibrary.hh文件,编译器会经历并编译它将使用的所有必要文件. …

c++ integer rsa biginteger

23
推荐指数
4
解决办法
7万
查看次数

一种将基类型转换为派生类型的方法

我不确定这是否是一件奇怪的事情,或者是否有一些代码闻起来...但我想知道是否有某种方式(某种oop模式会很好)来"施放"基类型到其派生类型的形式.我知道这没有多大意义,因为派生类型将具有父级不提供的附加功能,这在其本身并非基本健全.但有没有办法做到这一点?这是一个代码示例,以便我可以更好地解释我在问什么.

public class SomeBaseClass {
    public string GetBaseClassName {get;set;}
    public bool BooleanEvaluator {get;set;}
}

public class SomeDerivedClass : SomeBaseClass {
    public void Insert(SqlConnection connection) {
          //...random connection stuff
          cmd.Parameters["IsItTrue"].Value = this.BooleanEvalutar;
          //...
    }
}

public static void Main(object[] args) {
    SomeBaseClass baseClass = new SomeBaseClass();
    SomeDerivedClass derClass = (SomeDerivedClass)baseClass; 
    derClass.Insert(new sqlConnection());
}
Run Code Online (Sandbox Code Playgroud)

我知道这似乎很傻,但有没有办法完成这种事情?

c# oop inheritance design-patterns

45
推荐指数
7
解决办法
7万
查看次数

重用MVC架构; 有两层UI:ASP.NET MVC和.NET Winforms

虽然我的问题可能看似抽象,但我希望不是.假设我开发了一个应用程序,一个ASP.NET MVC站点,后来我的任务是为这个应用程序构建一个Winforms客户端,从现有应用程序中重用多少以及如何重用?

我定义了模型,我定义了控制器和视图.他们都运作良好.

现在老板要求Winforms客户端,我希望我可以重用模型和控制器(假设我把它们放在不同的程序集中)而不是只重用视图(ASPX视图).

可以这样做吗?怎么样?

asp.net-mvc refactoring reusability winforms

8
推荐指数
1
解决办法
1298
查看次数

在Rails应用程序中运行异步作业的最佳方法是什么?

我知道有几个插件可以进行异步处理.哪一个是最好的,为什么?

我所知道的是:

asynchronous ruby-on-rails

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

Shell脚本以递归方式浏览目录并替换字符串

我需要递归搜索目录并将所有文件中的字符串(例如http:// development:port/URI)替换为另一个字符串(例如http:// production:port/URI).有人可以帮忙吗?

如果该脚本可以打印出它修改的文件并将搜索/替换模式作为输入参数,那会好得多.

问候.

regex scripting

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

从Excel VBA编辑嵌入式PowerPoint

我在Excel工作簿中有一个嵌入式PowerPoint演示文稿.如何使用VBA编辑(打开,复制幻灯片,向幻灯片添加数据,关闭)?

excel powerpoint vba excel-vba powerpoint-vba

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

您将如何生成默认用户个人资料照片?

我一直在欣赏StackOverflow的默认被子般的个人资料图片(我注意到它也在失败的博客上),我很好奇什么程序都用来生成它们.

但我真正想知道的是:如果你要设计系统来创建默认的个人资料图片,你会怎么做?

我正在寻找关于你使用什么算法的想法,以及诸如如何将图像与用户相关联,与用户名相关或者他们的进展的一些描述(即图像变得更复杂,或更大,因为他们获得声誉).

algorithm identicon

13
推荐指数
2
解决办法
3058
查看次数

如何与Hyper-V中的VM实例共享主机VPN连接?

我在Server 2008上运行我的工作站,在该服务器上运行Hyper-V VM中的一些服务器.我使用来自主操作系统(主机)的VPN连接到我的公司LAN,但我的VM没有看到公司LAN中的服务器.互联网和本地访问我的家庭网络工作正常.每个VM都有一个虚拟网络适配器.

我该怎么做才能让它发挥作用?

也许我需要提供更多细节,如果需要请询问.

更多细节:

  • 无法启动多个VPN连接
  • 不通过主机使用NAT
  • VM从家庭网络路由器(DHCP)获取IP地址

windows networking hyper-v connectivity

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