Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >在c#中使用vb.net动态链接库。获取“无效参数”

在c#中使用vb.net动态链接库。获取“无效参数”
EN

Stack Overflow用户
提问于 2011-04-19 08:48:56
回答 2查看 2K关注 0票数 0

得到了一个奇怪的,我知道这是一个愚蠢的东西,但我看不到它的任何东西!

我在VB.net中创建了一个动态链接库(不,我不能更改它!:-),并从C#调用它。问题出现在在C#中创建对象时,我得到的消息是它有“一些无效的参数”。

DLL中的构造函数代码如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Sub New(ByRef Connection As IConnection)

C#中的代码是:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
IConnection conn = new Connection();  
CustomObject test = new CustomObject(conn)

它对第一行很满意,但在第二行给出了错误消息(“一些无效参数”)。

我还在VB.net中创建了一个辅助项目,名为DLL,它在那里运行得很好。

我做错了什么?

提前谢谢你,

安迪

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-04-19 08:52:03

在C#中,如果参数为"ByRef“,则必须在调用函数时指定该参数

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
CustomObject test = new CustomObject(ref conn);
票数 2
EN

Stack Overflow用户

发布于 2011-04-19 09:04:12

前几天我也遇到了类似的问题,所以也许我能帮上忙。我是新手,但在我的项目中,我遇到了同样的问题(不是错误)。

可以,您可以在C#.NET项目中使用通过VB.NET构建的DLL。如果你有一个VB.NET动态链接库,你可以在不改变C#.NET的情况下使用它,但有时你需要注意platform选项。

以下是.NET中的两个重要特性:

  1. 编译生成IL (中间语言)代码。所有.NET语言在编译时产生的IL都是由JIT (Just In Time)编译器编译的。
  2. 这些语言都使用公共类型系统,并在相同的公共语言运行时上运行。目标是生成易于interoperable.

的代码

所以,动态链接库不是问题。你的错误可能是其他原因造成的,我不知道。

希望这能有所帮助。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5713818

复制
相关文章
Hibernate延迟加载
上一篇文章我们学习了Hibernate的多表关联关系,这里就涉及到一个很实用的概念:延迟加载或者也叫惰性加载,懒加载。使用延迟加载可以提高程序的运行效率。Java程序与数据库交互的频次越低,程序运行效率越高,所以我们应该尽量减少Java程序与数据库的交互次数,Hibernate延迟加载就很好的做到了这一点。
南风
2019/04/22
1.4K0
Hibernate延迟加载
Spring整合Hibernate、Hibernate JPA、Spring Data JPA、Spring Data Redis
环境说明,使用Jdk1.8版本,spring4.2.0.RELEASE版本、hibernate5.0.7.Final版本,spring-data-jpa-1.9.0.RELEASE版本、spring-data-redis-1.6.0.RELEASE版本。
别先生
2020/05/27
5.6K0
Hibernate之延迟加载
文章目录 1. hibernate之延迟加载 1.1. 什么是延迟加载 1.2. 好处 1.3. 如何使用延迟加载 1.4. 使用延迟加载需要注意的问题 hibernate之延迟加载 什么是延迟加载 在使用某些Hibernate方法查询数据的时候,Hibernate返回的只是一个空对象(除了id外属性都为null),并没有真正的查询数据库。而是在使用这个对象的时候才会出发查询数据,并将查询到的数据注入到这个空对象中,这种查询时机推迟到对象访问时的机制称之为延迟加载。 简单的说,使用延迟加载获取的对象,只
爱撒谎的男孩
2019/12/31
9320
hibernate延迟加载详解
hibernate延迟加载详解 Hibernae 的延迟加载是一个非常常用的技术,实体的集合属性默认会被延迟加载,实体所关联的实体默认也会被延迟加载。hibernate 通过这种延迟加载来降低系统的内存开销,从而保证 Hibernate 的运行性能。 下面先来剖析 Hibernate 延迟加载的“秘密”。 集合属性的延迟加载 当 Hibernate 从数据库中初始化某个持久化实体时,该实体的集合属性是否随持久化类一起初始化呢?如果集合属性里包含十万,甚至百万的记录,在初始化持久化实体的同时,完成所有集合属性
Java帮帮
2018/03/19
1.4K0
hibernate延迟加载详解
Spring整合Hibernate JPA
JPA:就是由Sun公司提供的一套对于持久层操作的标准(接口加文档),没有具体的实现。
害恶细君
2022/11/22
1.2K0
Hibernate延迟加载 lazy loading
/**  *  * @author XHW  *  * @date 2011-7-18  *  */ public class HibernateTest {  public static void main(String[] args) {   new HibernateTest().update();  }  public void update(){   Session session=HibernateSessionFactoryUtil.getSessionFactory().getCurrentSession();   session.beginTransaction();  Category category=(Category)session.get(Category.class, 1);   System.out.println("id:"+category.getId()+"  ,name:"+category.getName()+", description:"+category.getDescription());   Set<Product> products=category.getProducts();   session.getTransaction().commit();    } }
Hongten
2018/09/18
1.1K0
Hibernate 和 JPA
Hibernate 在 5 以后的版本中全面推进使用 JPA 的查询语法,甚至准备废弃掉自己已有的查询语法。
HoneyMoose
2022/01/13
5070
Hibernate 和 JPA
Hibernate 的延迟加载(懒加载)简介1
什么是延迟加载: 在使用某些Hibernate方法查询数据时,Hibernate返回的只是一个空对象(除id外属性都为null),并没有真正查询数据库。而在使用这个对象时才会触发查询数据库,并将查询到的数据注入到这个空对象中。这种将查询时机推迟到对象访问时的机制称之为延迟加载。 ---- 为什么要使用延迟加载: 可以提升内存资源的使用率 可以降低对数据库的访问次数 ---- 采用延迟加载的方法: session.load() 查询时不进行SQL查询,在使用对象时才执行SQL查询;效率高 query.i
qubianzhong
2018/08/10
1.4K0
JPA、Hibernate、Spring Data JPA 的关系,你懂吗?
来源:https://my.oschina.net/u/3080373/blog/1828589
Java技术栈
2019/07/31
1.8K0
Spring全家桶之SpringData——Spring 整合Hibernate与Hibernate Jpa
注意 1. sql语句 ,是通过对象查询的表 ,虽然可以出现select 但是却不能出现通配符 *,故可以省略 Select * 2 .区别 getCurrentSession 与openSession 方法的用法 getCurrentSession:当前session 必须要有事务边界, 且只能处理唯一的一个事务。当事务提交或者回滚后session 自动失效 openSession:每次都会打开一个新的session.加入每次使用多次。则获得的是不同session 对象。使用完毕后我们需要手动的调用colse方法关闭session
时间静止不是简史
2020/07/25
2.9K0
Hibernate Session和Jpa EntityManager
本文适用 Hibernate:4.3.11.Final 和 spring-data-jpa:1.10.4.RELEASE 。
pollyduan
2019/11/04
2.1K0
使用Spring Boot,JPA,Hibernate和Postgres的多租户应用程序
多租户是一种方法,应用程序实例由不同的客户使用,从而降低软件开发和部署成本,与单一租户解决方案相比,在这种解决方案中,需要触及多个部分以提供新客户端或更新现有租户。
Java架构师历程
2018/09/26
7.8K1
使用Spring Boot,JPA,Hibernate和Postgres的多租户应用程序
spring data jpa hibernate jpa 三者之间的关系
JPA规范本质上就是一种ORM规范,注意不是ORM框架——因为JPA并未提供ORM实现,它只是制订了一些规范,提供了一些编程的API接口,但具体实现则由服务厂商来提供实现,JBoss应用服务器底层就以Hibernate作为JPA的实现。
用户3148308
2018/09/13
1.3K0
spring data jpa hibernate jpa 三者之间的关系
mybatis和hibernate的以及jpa区别_hibernate sql
hibernate和mybatis是当前流行的ORM框架。hibernate对数据库结构提供了较为完整的封装。mybatis主要着力点在于java对象与SQL之间的映射关系。
全栈程序员站长
2022/09/30
1.2K0
mybatis和hibernate的以及jpa区别_hibernate sql
JPA、Hibernate、Spring data jpa之间的关系,终于明白了
全称Java Persistence API,可以通过注解或者XML描述【对象-关系表】之间的映射关系,并将实体对象持久化到数据库中。
hbbliyong
2018/07/24
1.5K0
JPA、Hibernate、Spring data jpa之间的关系,终于明白了
JPA、Hibernate、Spring data jpa之间的关系,终于明白了
全称Java Persistence API,可以通过注解或者XML描述【对象-关系表】之间的映射关系,并将实体对象持久化到数据库中。
java思维导图
2018/07/26
2.3K0
JPA、Hibernate、Spring data jpa之间的关系,终于明白了
Spring Data JPA 介绍和使用
Spring Data JPA是Spring基于Hibernate开发的一个JPA框架。如果用过Hibernate或者MyBatis的话,就会知道对象关系映射(ORM)框架有多么方便。但是Spring Data JPA框架功能更进一步,为我们做了 一个数据持久层框架几乎能做的任何事情。下面来逐步介绍它的强大功能。
乐百川
2022/05/05
3.6K0
JPA/Hibernate问题汇总
报错很明显,是由于hibernate的懒加载引起的。项目使用的是SpringBoot框架,JPA默认使用的是hibernate的实现,而hibernate的懒加载机制其实就是延迟加载对象,如果没有在session关闭前使用到对象里除id以外的属性时,就只会返回一个没有初始化过的包含了id的代理类。很多时候,这个代理类会引发上述的异常。
雨临Lewis
2022/01/12
2.6K0
spring-boot开发过程中的问题汇总
在application.properties中加上spring.jpa.properties.hibernate.default_schema=[user],由于oracle不同表空间下可以有同名表,而表的访问都是user.table,这样来区分不同表空间同名表造成的问题。
sucl
2019/08/07
1.3K0
聊聊spring data jpa的OpenSessionInView
本文主要研究一下spring data jpa的OpenSessionInView
code4it
2019/04/13
3.8K0
聊聊spring data jpa的OpenSessionInView

相似问题

为什么我的HttpClient.SendAsync被取消了?

23

绝对定位:为什么我的盒子被抵消了?

11

为什么我的地图标记ObjectAnimators被取消了?

10

为什么这个功能被取消了?

21

为什么这个孩子被抵消了?

11
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文