找回密码
 立即注册

QQ登录

只需一步,快速开始

tingche

银牌会员

17

主题

76

帖子

3877

积分

银牌会员

积分
3877

活字格认证

tingche
银牌会员   /  发表于:2013-9-10 11:45  /   查看:17573  /  回复:28
在试用SPREAD7 的时候,发现导入命名空间问题,单独做个测试页面没有相关问题,但是放到项目中,就出现了这个问题,请问怎么解决,谢谢!

fpspread.png
spread.png

28 个回复

倒序浏览
iceman
社区贡献组   /  发表于:2013-9-10 11:56:00
沙发
回复 1楼tingche的帖子

是不是 webconfig 中 Spread 的dll信息和 页面中版本不一致?可以针对旧版本号进行全局搜索替换。
回复 使用道具 举报
tingche
银牌会员   /  发表于:2013-9-10 16:24:00
板凳
添加 spread dll 引用后,生成的bin 如下,其中FarPoint.Web.SpreadJ.dll 是5.0 版本的dll,为什么会生成这个版本的dll,其他引用生成的都是7.0 版本的dll

回复 使用道具 举报
iceman
社区贡献组   /  发表于:2013-9-10 18:24:00
地板
回复 3楼tingche的帖子

我的机器中也装了多个版本的 Spread ,但是拖拽后总是按照最高版本生成的 dll 信息。
你可以尝试以从工具箱中拖拽方式添加 Spread 7.0.

如果添加的 DLL 版本不对,需要更改的部分有:
1.当前 aspx 页面的 dll 版本。
2.license 文件中的版本信息。
3.WebConfig 中的 dll 版本。
4.引用中的 dll。

谢谢
回复 使用道具 举报
tingche
银牌会员   /  发表于:2013-9-11 11:14:00
5#
我卸载了5.0版本,但是还是生成了  FpPoint.web.spreadj.dll 这个5.0版本的dll

这个 FpPoint.web.spreadj.dll  文件依赖哪里生成?我想找到这里!
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2013-9-11 12:20:00
6#
回复 5楼tingche的帖子

tingche 你好,

不好意思,由于我这边没能重现你的问题,没有办法给出确切的答案。
所以请尝试查看下 GAC 中是否还有   FpPoint.web.spreadj.dll  这个 dll ,可以删除之后再尝试添加。看看能否解决问题。

如果仍然存在问题,请及时通知我。
回复 使用道具 举报
tingche
银牌会员   /  发表于:2013-9-11 13:27:00
7#
依然存在的,我把生成的bin文件夹里的FpPoint.web.spreadj.dll  删除后,重新生成,又有FpPoint.web.spreadj.dll  这个文件了
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2013-9-11 15:28:00
8#
回复 7楼tingche的帖子

gacutil 的使用方法如下:
http://baike.baidu.com/link?url= ... 66B93TjR3hpI3_p698i

是否尝试过把工具箱中的 Spread 删除,重新添加 Spread 7.0 控件,再拖拽呢?

untitled.png
回复 使用道具 举报
tingche
银牌会员   /  发表于:2013-9-11 16:05:00
9#
按照您所说的,我单独新建一个测试文件是没问题的,但是我在项目内建一个同目录下的用户控件,依然出现"FpSpread"在命名空间"FarPoint.Web.Spread"中不明确 的提示!
回复 使用道具 举报
tingche
银牌会员   /  发表于:2013-9-11 16:16:00
10#
回复 8楼iceman的帖子

后台我定义了一个这样的类
Public ReadOnly Property Spread As FpSpread        
        Get
            Return Me.fsCommon
        End Get
End Property

我跟踪进元数据,发现有两个类: FarPoint.Web.SpreadJ,  FarPoint.Web.Spread  包含这个FpSpread
spreadj.png

5.0版本包含FarPoint.Web.SpreadJ.dll 这个程序集,但是换成7.0版本后,5.0版本也卸载掉了,重新生成项目的时候,bin文件夹下还是会出现FarPoint.Web.SpreadJ.dll 这个程序集,是7.0里还有这个方法,还是我的工程里没有删除干净?为什么还会有这个程序集出现?
就是因为有这两个程序集,经过引入命名空间<%@ Register assembly="FarPoint.Web.Spread, Version=7.0.4002.2010, Culture=neutral, PublicKeyToken=327c3516b1b18457" namespace="FarPoint.Web.Spread" tagprefix="FarPoint" %> 后,

前台添加spread:  
<FarPoint:FpSpread ID="fsCommon" runat="server" BorderColor="Black" oncreatebutton="FpSpread1_CreateButton"
    BorderStyle="Solid" BorderWidth="1px" Height="600px">
        <commandbar backcolor="Control" buttonfacecolor="Control"
            buttonhighlightcolor="ControlLightLight" buttonshadowcolor="ControlDark">
        </commandbar>
        <sheets>
            <FarPoint:SheetView SheetName="Sheet1">
            </FarPoint:SheetView>
        </sheets>
</FarPoint:FpSpread>

提示说 ,FarPoint:FpSpread 这里的spread无法识别,存在歧义,请给一个解决的思路,谢谢!
回复 使用道具 举报
123下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部