找回密码
 立即注册

QQ登录

只需一步,快速开始

lingee

初级会员

30

主题

100

帖子

298

积分

初级会员

积分
298
lingee
初级会员   /  发表于:2022-9-13 14:41  /   查看:2824  /  回复:11
本帖最后由 lingee 于 2022-9-13 14:43 编辑

以下顺序操作:

1. 新建一个.NET6的Winform工程

2. 从指定路径添加dll引用
    C1.Win.6.dll
    C1.Win.FlexGrid.6.dll   版本:6.0.20222.566
获得途径:别的工程从NuGet下载后,从路径【..\.nuget\packages\c1.win\6.0.20222.566\lib\net6.0】拷贝至本工程目录
理由:因为业务上一些特殊要求,项目不允许直接通过NuGet引用dll

3. 在还未在画面上添加任何控件的情况下,编译出警告,报"WindowsBase"的版本冲突
"WindowsBase, Version=4.0.0.0, ****" [..\dotnet\packs\Microsoft.NETCore.App.Ref\6.0.8\ref\net6.0\WindowsBase.dll]
"WindowsBase, Version=6.0.2.0, ****" [..\ComponentOne\Dlls\C1.Win.FlexGrid.6.dll]

求教,该如何消除此警告?
前提是不能从Nuget引用。。。
附上Demo

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

11 个回复

倒序浏览
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-9-13 15:19:24
沙发
如果你这边是不能在nuget.org上获取的话,实际上在本机安装开发包后,也能通过nuget的本地源来引用,这种方式应该适合你们,

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
lingee
初级会员   /  发表于:2022-9-13 15:33:11
板凳
emmm
咱们这儿特殊的就是,需要引用的dll,必须明示在工程目录中,所以把需要的dll拷贝到了Dlls文件夹里面
因为无论选择的是nuget.org还是本地源,工程文件.csproj里的内容其实都一样的
<PackageReference Include="C1.Win.FlexGrid" Version="6.0.20222.566" />

出错的问题在考虑,是不是少拷贝了哪个必要的dll过来?



回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-9-13 18:26:34
地板
应该不是少拷贝了dll的原因,这个问题应该不影响编译,可以先忽略,如果编译运行有问题的话,我来报给研发
回复 使用道具 举报
lingee
初级会员   /  发表于:2022-9-13 18:45:02
5#
是的,编译能过,就是每个project都会出这个警告,特烦,怎么都消不掉~
运行起来还不确定,因为另一个Inputman的错误还没跑起来~

或者,能给我个你们控件编译时使用的Ver6.0.2.0 这个版本的WindowsBase.dll不?
我sdk更新到最新也没见这个版本的。。
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-9-14 12:27:21
6#
警告的原因可能是flexgrid 组件使用的.NET6小版本不一致的原因。这个目前没办法提供对应的WindowsBase.dll

如果不影响运行的话,vs中你就取消显示警告就是了

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
lingee
初级会员   /  发表于:2022-9-20 18:18:46
7#
本帖最后由 lingee 于 2022-9-20 18:21 编辑

除了版本冲突以外,还有一个警告,
画面上添加C1FlexGrid后再打开Design画面的时候,
会报一堆Design用dll找不到的错,比如:
C1.Win.FlexGrid.6.Design
C1.Win.Design

【fail: [WinFormsApp1]: Failed to load assembly: C1.Win.FlexGrid.6.Design, Version=6.0.20222.566
          System.IO.FileNotFoundException: Could not load file or assembly 'C1.Win.FlexGrid.6.Design, Version=6.0.20222.566, Culture=neutral, PublicKeyToken=null'.】

基于这些警告,画面上点不到添加的C1FlexGrid控件,不能在画面上修改设计,
这个问题有啥解决办法不?
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-9-20 18:52:49
8#
你可以看看包里有没有这些dll,也引用了试试
回复 使用道具 举报
lingee
初级会员   /  发表于:2022-9-20 19:39:36
9#
就是哪里都找不到这几个dll
安装目录也没有 Nuget下载目录里也没找到
只有一个*.Design.Server.dll 放进来也没用
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-9-21 09:30:25
10#
本帖最后由 Richard.Ma 于 2022-9-21 09:35 编辑

你试试,
1.和你这个帖子中一样https://gcdn.grapecity.com.cn/forum.php?mod=viewthread&tid=153856,加入license信息

2.这个flexgrid有依赖C1.win,所以你需要把C1.Win包里的dll也全部引入

我这边测试了一下,加了这个以后,可以正常拖入控件,编译运行



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部