• 谨记config或者xml中的embedded使用方法。


    在配置iBatis.NET的sqlmap.config时,经常提示说“Unable to load embedded resource from assembly”的错误,明明某个项目中存在这文件,并且在根目录下,而且生成操作是“嵌入的资源”。却提示这个错误,其中的定义是:

    <properties embedded="database.config,piggyWinForm.Data"/>

    经过网上搜索相关资料,发现很多类似的embedded配置中xml或者config都出现多个“.”,而不是我这里的就一个文件名,因此,我在文件前面加上命名空间后,竟然没报这个错。这才醒悟,embedded的格式是:

    <properties embedded="<命名空间>database.config,<程序集>"/>

    如果一个项目的程序集和命名空间相同的话,则文件前面的<命名空间>可以略去。

    为何要使用embedded?目的在于安全性,特别是在开发winform项目时,避免客户端遭客户乱篡改,或者某些其它原因导致xml或者是其它的配置文件被修改而出问题。特别是iBatis的sqlmap中的sql语句。

    今天觉得iBatis的xml配置文件放在根目录下很不爽。于是把这些xml放入map文件夹。直接编译调试,与猜测一样,确实会报错,提示找不到文件。于是去修改配置文件,修改embedded为:

    <sqlMap embedded="piggyWinFormTemplet.Data.Auto.Map.Myperson_Auto.xml,piggyWinForm.Data.Auto"/>

    居然成功了。因此,embedded的真正格式是:

    <properties embedded="<命名空间>.<相对路径>.database.config,<程序集>"/>

    原创作品出自努力偷懒,转载请说明文章出处http://www.cnblogs.com/kfarvid/

  • 相关阅读:
    AcWing 852. spfa判断负环 边权可能为负数。
    面试题 02.01. 移除重复节点
    1114. 按序打印
    剑指 Offer 38. 字符串的排列
    557. 反转字符串中的单词 III
    645. 错误的集合
    面试题 05.03. 翻转数位
    1356. 根据数字二进制下 1 的数目排序
    748. 最短完整词
    剑指 Offer 32
  • 原文地址:https://www.cnblogs.com/kfarvid/p/1855426.html
Copyright © 2020-2023  润新知