C# 索引属性?

2023-12-01

我使用 Visual Basic 已经有一段时间了,最​​近决定开始学习 C#,作为学习更复杂语言的一个步骤。

作为这次跳跃的一部分,我决定将一些旧的 VB 项目手动转换为 C#。我遇到的问题是转换一个具有使用带有参数/索引的属性的类的库。

在 VB 中该属性类似于以下内容:

Friend Property Aproperty(ByVal Index As Integer) As AClass
        Get
            Return Alist.Item(Index)
        End Get
        Set(ByVal value As KeyClass)
            Alist.Item(Index) = value
        End Set
    End Property

当我使用该属性时,它将像这样使用:

Bclass.Aproperty(5) = new AClass

我想在 C# 中实现这种事情,但我一生都无法弄清楚如何做到这一点,因为 C# 似乎无法做到这种事情。


由于 C# 不支持参数化属性(这就是您所显示的),因此您需要将此代码转换为两个函数:GetAProperty(index) 和 SetAProperty(index)。

我们将 50,000 多个 LOC 应用程序从 VB 转换为 C#,由于依赖参数化属性,因此需要进行大量修改。然而,这是可行的,只是需要以不同的方式思考这样的属性。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C# 索引属性? 的相关文章

随机推荐

  • 使用 Gmail 从 Excel 发送电子邮件

    我正在尝试在保存工作簿后自动生成电子邮件 我不想在电子邮件中发送工作簿 只是向一组人员发送电子邮件通知 告知其中有一个新条目 因此他们实际上必须打开它并做出响应 如果我可以添加指向该条目位置的链接 可以使用的电子表格 此外 该工作簿是 共享
  • Flutter 从 Firebase Cloud Firestore 返回完整数组

    9 月 2 日最新编辑 即使有赏金 我对此也没有太大的兴趣 所以我会尝试问一个更简单 更具体的问题 因此 我根据下面 Doug 的建议重新组织了数据库 因为我无法在 firebase 中以任何方式引用数组 所以现在我有了一个数组的映射 而不
  • 有些手机需要 READ_CONTACTS 权限才能从联系人选择器中读取

    我有一个HTC ONE M7 GPE 4 2 2 和HTC EVO 3D 4 0 3 HTC Sense 3 6 HTC ONE不需要
  • 如何在不使用任何插件的情况下添加 2 个音调图标?

    我不想只为我的应用程序中的一个图标添加任何插件 但我需要两种色调 因为背景颜色会有所不同 我不知道什么时候会变暗 什么时候会变亮 我的意思是像这样的图标 https material io tools icons style twotone
  • 如何创建更加用户友好的 string.format 语法?

    我需要在程序中创建一个很长的字符串 并且一直在使用String Format 我面临的问题是当参数超过 8 10 个时跟踪所有数字 是否可以创建某种形式的重载来接受与此类似的语法 String Format You are age year
  • 路由器解析不会注入控制器

    我已尝试一切方法来让 ui router 解析将其值传递给给定的控制器 应用程序 Ctrl 我正在使用依赖注入 inject 这似乎导致了问题 我缺少什么 Routing stateProvider state app index url
  • 如何将命名向量作为行添加到数据框中,并根据列名称顺序重新排序?

    如何将命名向量添加到数据框中 并根据数据框的列名称重新排序向量的组件 我需要一次一行构建一个数据框 通过某种处理获得命名向量 它提供要插入的行的值 问题是命名向量的分量与数据框列的顺序不同 这使得rbind产生错误的结果 这是非常简化的示例
  • 如何在Windows服务器上安装Apple Push证书

    我需要安装从 Apple 开发门户下载的证书 以便在 Windows 服务器上测试推送通知 我在网上搜索了一个解决方案 但每个人对此都有不同的看法 有人有关于如何执行此操作的分步指南吗 我也一直在研究这个课题 以下链接可能对您有用 http
  • Laravel 4,在 JavaScript 中传递变量到路由

    How Can I pass the variable stock id return from Ajax response to the route to generate the url to edit a stock ajax url
  • 检测手机休眠时的手势[关闭]

    Closed 这个问题需要多问focused 目前不接受答案 我正在开发一个 SOS Android 应用程序 如果手机处于睡眠 待机模式 我想检测手势 例如屏幕上的几次触摸 并开始发送帮助请求 例如发送短信 我怎样才能检测到这个手势 有人
  • 使用 Cypress 登录 WordPress,无需使用 UI

    In the 有关登录的 Cypress 文档他们指出不应使用 UI 设置状态 但看起来 WordPress 的 API 中没有提供登录功能 由于黑客攻击是大多数 WordPress 站点上的一个问题 所以我不想添加它 如何使用 Cypre
  • 如何在 django 通道上使用令牌身份验证对 Websocket 进行身份验证?

    我们想为我们的 websocket 使用 django channels 但我们也需要进行身份验证 我们有一个与 django rest framework 一起运行的 Rest api 我们使用令牌来验证用户身份 但 django cha
  • NSXMLParser 因 & 符号而阻塞

    我正在使用 NSXMLParser 解析一些 HTML 只要遇到 符号 它就会遇到解析器错误 我可以在解析它之前过滤掉 符号 但我宁愿解析那里的所有内容 它给我错误 68 NSXMLParserNAMERequiredError 名称是必需
  • 在一行与 1 和 0 矩阵之间进行异或的更快方法?

    我有一行数据 比如说A 0 1 1 1 0 0 矩阵 B 包含许多行 对于一个虚拟的例子 我们假设它只是B 1 1 1 0 1 0 1 0 0 1 0 1 我想找到 A 和 B 的行不同的列数 并使用该差异向量来查找 B 的哪一行与 A 最
  • 使用字符串创建 Red 语言的单词和路径

    我有字符串在namelist 对应于应用程序中的变量和字段名称 该函数应该从名称列表中读取字符串 添加 f 以获取 field names 然后将变量值放入相应的字段中 我尝试了以下代码 没有给出任何错误 但也不起作用 namelist v
  • Rstudio不会编织

    Rstudio 不会编织 我已经在课程中使用它几个星期了 当我尝试编织时 它会执行直到遇到一些代码并停止 代码是 ggplot 数据 gss aes x 年 填充 度 几何酒吧 消息是 找不到函数 ggplot 其他函数也会发生这种情况 注
  • C#8 接口及其中定义的属性/方法 - 显然不起作用

    这是我使用的界面 public interface IPresentism public abstract bool isPresent get public virtual bool isAbsent gt isPresent isPre
  • Oracle 中的 OVER 子句

    Oracle中的OVER子句是什么意思 The OVER子句指定分析函数运行的 分区 排序和窗口 示例 1 计算移动平均线 AVG amt OVER ORDER BY date ROWS BETWEEN 1 PRECEDING AND 1
  • 如何通过解析 TTF 字体文件获取字形宽度?

    用于捕获 a 的字形宽度TrueType字体 我转换对应的TTF归档依据fontforge into AFM 它是文本格式 不是二进制 然后 解析文本文件以捕获字形宽度 应该有更简单的方法来直接解析二进制文件TTF文件来捕获字形宽度 我很欣
  • C# 索引属性?

    我使用 Visual Basic 已经有一段时间了 最 近决定开始学习 C 作为学习更复杂语言的一个步骤 作为这次跳跃的一部分 我决定将一些旧的 VB 项目手动转换为 C 我遇到的问题是转换一个具有使用带有参数 索引的属性的类的库 在 VB