- 浏览: 2174010 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (1878)
- [网站分类]ASP.NET (141)
- [网站分类]C# (80)
- [随笔分类]NET知识库 (80)
- [随笔分类]摘抄文字[非技术] (3)
- [随笔分类]养生保健 (4)
- [网站分类]读书区 (16)
- [随笔分类]赚钱 (7)
- [网站分类].NET新手区 (233)
- [随笔分类]网站 (75)
- [网站分类]企业信息化其他 (4)
- [网站分类]首页候选区 (34)
- [网站分类]转载区 (12)
- [网站分类]SQL Server (16)
- [网站分类]程序人生 (7)
- [网站分类]WinForm (2)
- [随笔分类]错误集 (12)
- [网站分类]JavaScript (3)
- [随笔分类]小说九鼎记 (69)
- [随笔分类]技术文章 (15)
- [网站分类]求职面试 (3)
- [网站分类]其他技术区 (6)
- [网站分类]非技术区 (10)
- [发布至博客园首页] (5)
- [网站分类]jQuery (6)
- [网站分类].NET精华区 (6)
- [网站分类]Html/Css (10)
- [随笔分类]加速及SEO (10)
- [网站分类]Google开发 (4)
- [随笔分类]旅游备注 (2)
- [网站分类]架构设计 (3)
- [网站分类]Linux (23)
- [随笔分类]重要注册 (3)
- [随笔分类]Linux+PHP (10)
- [网站分类]PHP (11)
- [网站分类]VS2010 (2)
- [网站分类]CLR (1)
- [网站分类]C++ (1)
- [网站分类]ASP.NET MVC (2)
- [网站分类]项目与团队管理 (1)
- [随笔分类]个人总结 (1)
- [随笔分类]问题集 (3)
- [网站分类]代码与软件发布 (1)
- [网站分类]Android开发 (1)
- [网站分类]MySQL (1)
- [网站分类]开源研究 (6)
- ddd (0)
- 好久没写blog了 (0)
- sqlserver (2)
最新评论
-
JamesLiuX:
博主,能组个队么,我是Freelancer新手。
Freelancer.com(原GAF – GetAFreelancer)帐户里的钱如何取出? -
yw10260609:
我认为在混淆前,最好把相关代码备份一下比较好,不然项目完成后, ...
DotFuscator 小记 -
日月葬花魂:
大哥 能 加我个QQ 交流一下嘛 ?51264722 我Q ...
web应用程序和Web网站区别 -
iaimg:
我想问下嵌入delphi写的程序总是出现窗体后面感觉有个主窗体 ...
C#自定义控件:WinForm将其它应用程序窗体嵌入自己内部 -
iaimg:
代码地址下不了啊!
C#自定义控件:WinForm将其它应用程序窗体嵌入自己内部
Enterprise Library Configuration是Enterprise Library附带的编辑App.Config的工具,安装Enterprise Library就会编译生成。使用这个工具编辑App.config时非常方便,但是也遇到一些使用上的问题。记录下来,以备后查。
问题起因:在调试的过程中,希望能够跟踪到Enterprise Library的内部,所以将Enterprise Library的Blocks中的代码加入到了自己的项目中,并在项目中引用这些组件。
问题描述:使用VSTS的插件Enterprise Library Configuration编辑并保存项目的App.config。在编译时选择全部重新编译,顺利通过(中间也遇到些小麻烦,不过不是本文档的重点讨论范畴)。运行时,一旦调用到Enterprise Library的组件,便会报以下错误提示:
未能加载文件或程序集“Microsoft.Practices.EnterpriseLibrary.Data, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35”或它的某一个依赖项,找到程序集清单定义与程序集不匹配。(异常来自……)
问题分析:
1、 看到PublicKeyToken,就猜测是因为强命名的关系,即清单与引用的程序集强命名不匹配(准确的说是公钥和私钥不匹配)。
2、 不匹配的原因:微软发布的程序集是包含强命的(即“……\Enterprise Library 4\ Bin”中的*.dll)。而本机编译得到的程序集是不包含强命名的(即“……Enterprise Library 4\EntLib4SCR\Bin”中的*.dll)
3、 VSTS 中嵌入的Enterprise Library Configuration是微软发布的,所以用它来编辑App.Config就会在配置文件中引入强命名,而项目引用的是本机编译得到的程序集,自然不匹配。
解决办法:
1、 使用VSTS中嵌入的Enterprise Library Configuration(“……\Enterprise Library 4\ Bin”)编辑配置文件,但引用的程序集一定得是微软发布的(“……\Enterprise Library 4\ Bin”)。
2、 使用本机编译得到的Enterprise Library Configuration(“……Enterprise Library 4\EntLib4SCR\Bin”)来编辑配置文件,引用的程序集就可以是本机编译得到的(“……Enterprise Library 4\EntLib4SCR\Bin”)。
其实道理很简单,就是必须得用配套的东西,要么用微软发布的,要么用本机编译的。
后记:
1、 本来是想可以使用Enterprise Library的同时还可以编辑其中的代码,没想到弄巧成拙。版本控制在微软这样的企业必定是非常严格的,所以如果你想修改Enterprise Library版本,合理的做法是也给Enterprise Library的每个项目都加上强命名(巨大的工作)。
2、 为了表述清楚,上文中的本地编译得到的程序集(“……Enterprise Library 4\EntLib4SCR\Bin”)实际上是在安装Enterprise Library时得到的,如果你希望使用的是已经经过你修改的程序集,应该使用“……Enterprise Library 4\EntLib4SCR\Block\Configuration\Src\Console\bin\Debug”下的Enterprise Library Configuration来编辑你的配置文件,才能确保正确。
3、 网上大部分说法是去掉配置文件中的“PublicKeyToken=31bf3856ad364e35”,我觉得这样做不是很合理,虽然能够使用,但是显然损失了很多可控性。原理是因为本机默认编译出的程序集本身就是“PublicKeyToken=null”,所以能够通过。
终于有点明白了,本人才疏学浅,这么简单的问题搞了这么久,不过欣慰的是总算有点收获。还有一点没有搞明白的是:VSTS中的插件路径在什么地方保存,要是知道直接改到本地编译后的路径就好了。我在本地文件和注册表中都没有找到(注册表中有这个路径,不过改了之后没有效果)。希望路过的高手能告诉一声,先谢了
问题起因:在调试的过程中,希望能够跟踪到Enterprise Library的内部,所以将Enterprise Library的Blocks中的代码加入到了自己的项目中,并在项目中引用这些组件。
问题描述:使用VSTS的插件Enterprise Library Configuration编辑并保存项目的App.config。在编译时选择全部重新编译,顺利通过(中间也遇到些小麻烦,不过不是本文档的重点讨论范畴)。运行时,一旦调用到Enterprise Library的组件,便会报以下错误提示:
未能加载文件或程序集“Microsoft.Practices.EnterpriseLibrary.Data, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35”或它的某一个依赖项,找到程序集清单定义与程序集不匹配。(异常来自……)
问题分析:
1、 看到PublicKeyToken,就猜测是因为强命名的关系,即清单与引用的程序集强命名不匹配(准确的说是公钥和私钥不匹配)。
2、 不匹配的原因:微软发布的程序集是包含强命的(即“……\Enterprise Library 4\ Bin”中的*.dll)。而本机编译得到的程序集是不包含强命名的(即“……Enterprise Library 4\EntLib4SCR\Bin”中的*.dll)
3、 VSTS 中嵌入的Enterprise Library Configuration是微软发布的,所以用它来编辑App.Config就会在配置文件中引入强命名,而项目引用的是本机编译得到的程序集,自然不匹配。
解决办法:
1、 使用VSTS中嵌入的Enterprise Library Configuration(“……\Enterprise Library 4\ Bin”)编辑配置文件,但引用的程序集一定得是微软发布的(“……\Enterprise Library 4\ Bin”)。
2、 使用本机编译得到的Enterprise Library Configuration(“……Enterprise Library 4\EntLib4SCR\Bin”)来编辑配置文件,引用的程序集就可以是本机编译得到的(“……Enterprise Library 4\EntLib4SCR\Bin”)。
其实道理很简单,就是必须得用配套的东西,要么用微软发布的,要么用本机编译的。
后记:
1、 本来是想可以使用Enterprise Library的同时还可以编辑其中的代码,没想到弄巧成拙。版本控制在微软这样的企业必定是非常严格的,所以如果你想修改Enterprise Library版本,合理的做法是也给Enterprise Library的每个项目都加上强命名(巨大的工作)。
2、 为了表述清楚,上文中的本地编译得到的程序集(“……Enterprise Library 4\EntLib4SCR\Bin”)实际上是在安装Enterprise Library时得到的,如果你希望使用的是已经经过你修改的程序集,应该使用“……Enterprise Library 4\EntLib4SCR\Block\Configuration\Src\Console\bin\Debug”下的Enterprise Library Configuration来编辑你的配置文件,才能确保正确。
3、 网上大部分说法是去掉配置文件中的“PublicKeyToken=31bf3856ad364e35”,我觉得这样做不是很合理,虽然能够使用,但是显然损失了很多可控性。原理是因为本机默认编译出的程序集本身就是“PublicKeyToken=null”,所以能够通过。
终于有点明白了,本人才疏学浅,这么简单的问题搞了这么久,不过欣慰的是总算有点收获。还有一点没有搞明白的是:VSTS中的插件路径在什么地方保存,要是知道直接改到本地编译后的路径就好了。我在本地文件和注册表中都没有找到(注册表中有这个路径,不过改了之后没有效果)。希望路过的高手能告诉一声,先谢了
发表评论
-
where T:new() 是什么意思
2014-04-18 09:26 1463where T:new() 是什么意思 经常看到方法后面 ... -
好久没写blog了
2012-05-21 18:43 2好久没写blog了 -
test
2011-03-19 09:48 818testddddddddddd -
QQ自动发日志分析
2011-03-10 18:15 1269首先列举比较重要的问 ... -
test
2011-02-23 18:03 809test -
test
2011-02-23 17:53 880test -
为啥cnblogs的数据不能导了
2011-02-23 11:03 914为啥cnblogs的数据不能导了内容 -
如何保护.net中的dll文件(防破解、反编译)
2010-07-30 00:28 1495.net是一种建立在虚拟机上执行的语言,它直接生成 MSIL ... -
提搞网站访问速度可做哪些优化
2010-08-08 15:30 1123一、 服务器优化 ... -
ASP.NET(c#)如何判断浏览器是否支持cookies
2010-07-29 09:33 1718实例代码: 下面是写cookie ... -
N点虚拟主机管理系统(For Windows2003/2008)功能及介绍
2010-04-09 11:23 2265N点虚拟主机管理系统是 ... -
使用c#+(datagrid控件)编辑xml文件
2010-04-06 09:13 1170对xml文件的记录进行删除,修改,或增加新记录。 利用了d ... -
HTTP代理模块(HTTP Proxy)
2010-04-04 10:19 3050HTTP代理模块(HTTP Proxy ... -
Error 80040154 retreiving COM Class factory
2010-03-29 09:23 22571.ask: Greetings, I have ... -
petshop4.0 详解之二(数据访问层之数据库访问设计)
2010-03-27 11:08 1073在系列一中,我从整体上分析了PetShop的架构设计,并提及了 ... -
分享十五个最佳jQuery幻灯插件和教程
2010-03-25 09:17 2012<p>在网站前端中使用jQuery库已经变得越来越 ... -
20个软件开发常用设计文档大全下载
2009-08-27 10:22 973搜集了一些软件开发的常用文档,分享给大家 总下载地址: h ... -
asp.net 在线 mp3,wma, avi
2009-09-04 13:58 9321.前台js<script type="tex ... -
sql db link string
2009-09-06 21:52 985SQL Server ODBC Standar ... -
ASP.Net2.0小技巧 保持滚动条的位置 焦点移动到某个控件 $符号轻松的使用FindControl
2009-09-11 11:05 1302您可能不知道的ASP.Net2.0 ...
相关推荐
要让C++能够访问C#的类库,C#类库中的方法必须是`public`的,并且如果涉及到实例方法,类需要标记为`public sealed`(不可继承),以确保COM兼容性。此外,类库需要设置为`AllowPartiallyTrustedCallers`属性,因为...
2. **配置管理**:在使用该类库时,开发者需要配置自己的商户ID(partner)、商户私钥(private_key)、支付宝公钥(public_key)等信息,这些参数通常在支付宝商户后台获取,用于验证和加密交易数据。 3. **请求...
public function __construct($key, $root = "/cachelayer"){ $this->root = $_SERVER["DOCUMENT_ROOT"].$root; $this->key = $key; } public function expired($life_span){ $this->...
7. **设计模式(Design Patterns)**:类库往往遵循常见的设计模式,如单例模式、工厂模式、观察者模式等,这些模式是解决特定问题的最佳实践,提高了代码的可读性和可维护性。 8. **枚举(Enum)和常量(Constants...
public_key = private_key.public_key() # 加密 message = b'This is a secret message' ciphertext = public_key.encrypt( message, padding.OAEP( mgf=padding.MGF1(algorithm=hashes.SHA256()), algorithm=...
在.NET框架中,C#程序集是承载代码的单元,相当于...通过实践这些步骤,开发者可以有效地构建自己的类库,提高代码复用性和项目的模块化程度。在实际开发中,理解并熟练运用这些知识将有助于提升软件开发的效率和质量。
Java 类库是Java编程语言的核心组成部分,它包含了大量的预定义类和接口,这些类和接口提供了丰富的功能,方便开发者进行日常开发。Java类库主要分为若干个包,如`java.lang`、`java.util`、`java.io`等,每个包都有...
request.AddParameter("key", "value"); ``` 3. **请求头管理**:设置请求头非常直观,例如添加自定义的`User-Agent`或`Authorization`。 ```csharp request.AddHeader("Content-Type", "application/json"); ``` ...
- 对类库进行详尽的单元测试,确保其功能正确无误,同时也有助于发现潜在的设计问题。 9. **文档和注释** - 提供清晰的API文档,描述类库的功能、使用方法及注意事项。类库内部应使用XML注释,便于生成文档和IDE...
- 开源社区通常会提供讨论论坛、问题追踪系统等资源,用户可以在这些平台上寻求帮助或贡献自己的改进。 总之,Blister Java PList类库是Java开发人员处理PList文件的强大工具,它简化了读写流程,提高了开发效率,...
encrypt_rsa = RSA.KEYUTIL.getKey(publicKey); encStr = encrypt_rsa.encrypt(input_rsa) encStr = RSA.hex2b64(encStr); console.log("加密结果:" + encStr) 解密: var decrypt_rsa = new RSA.RSAKey(); ...
public bool SetRegVal(string keyPath, string keyName, string keyValue) { try { using (RegistryKey key = _rootkey.CreateSubKey(keyPath)) { key.SetValue(keyName, keyValue); return true; } } ...
C#中加密主要基于.NET框架提供的System.Security.Cryptography命名空间,该命名空间包含了多种加密算法的类库。常见的加密算法有AES(高级加密标准)、DES(数据加密标准)、RSA(公钥加密算法)和SHA(安全散列算法...
public function cacheData($key, $value = '', $cacheTime = 0) { $filename = $this->_dir . $key . self::EXT; if($value !== '') { // 将value值写入缓存 if(is_null($value)) ...
本文将深入探讨如何在底层类库和C#代码中获取和管理Session。 首先,要获取Session,你需要确保在你的项目中已经引用了System.Web命名空间,因为Session对象是该命名空间中的成员。在C#代码中,你可以通过以下方式...
C# 类库是.NET框架的核心组成部分,它提供了一系列预先定义的类、接口和方法,用于构建高效、可维护的C#应用程序。C#类库涵盖了各种功能,包括数据访问、网络通信、图形绘制、文件I/O操作等。下面将详细探讨C#类库的...
encrypt.setPublicKey('your_public_key_here'); var encrypted = encrypt.encrypt('plaintext'); ``` 服务器端则使用私钥解密`encrypted`字符串。 4. **PHP对接**: 在服务器端,可以使用PHP的`openssl`扩展...
foreach($_COOKIE as $key=>$value){$this->stopattack($key,$value,$this->cookiefilter);} } public function stopattack($StrFiltKey, $StrFiltValue, $ArrFiltReq){ if(is_array($StrFiltValue...
(2) public Object get(Object key):返回哈希表中指定键对应的值。 Java.util 包提供了一些非常实用的工具类,帮助开发者更方便地处理日期、时间、随机数、堆栈、向量、位集合和哈希表等数据结构。
C#开发者可以利用.NET框架中的System.Collections.Generic命名空间进行数据结构操作,如List和Dictionary<TKey, TValue>等。System.IO命名空间则提供了文件和流的操作功能,例如File类和StreamReader/StreamWriter类...