问题标签 [obsolete]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
browser - 您是否被迫为旧的网络浏览器开发?
在我开始从事目前的工作之前,我一直想知道为什么人们仍在运行旧的网络浏览器。在这里,我被迫使用 IE6 来开发我们所有的内部应用程序,因为我们的目标用户也在使用 IE6。是否有其他人处于不允许他们运行最新技术的情况,是什么阻止了你?您是否尝试过说服 IT/管理层进行升级?
c# - 为什么 C# 集合属性在调用它们的属性时没有被标记为过时?
我试图将类上的集合属性标记为已过时,以查找所有出现的情况并在我的警告列表中保留要修复的缩小列表,因为我们需要用其他东西替换这个集合属性。
编辑:我已经通过 Microsoft Connect 提交了这个,问题 #417159。
编辑 16.11.2010:验证现在在为 .NET 3.5 和 4.0 编译时,这在 C# 4.0 编译器中有效。我在发布的代码中收到 4 条警告,包括带有注释“不好?”的一条。
然而,令我惊讶的是,该列表仅包含一些事件,远远少于我所知道的,并且抽查告诉我,出于某种原因,该属性的使用并不总是被编译器在警告列表中标记为过时.
这是一个示例程序,可以在 Visual Studio 2008 中编译。
请注意末尾附近标有 #1-#4 的四行,其中,我希望他们所有人都报告使用的属性已过时,但 #3 不是,而且似乎如果我继续直接添加到集合属性或方法中,属性本身的使用不会被标记为过时。请注意,#3 和#4 引用相同的属性,并且#4 被标记为使用过时的属性,而#3 不是。测试表明,如果我在表达式中访问属性返回的集合的属性或方法,编译器不会抱怨。
这是一个错误,还是我不知道的 C# 编译器的“隐藏的宝石”?
c# - 过时属性混淆
我想将 ObsoleteAttribute 应用于属性,但似乎编译器仅针对属性的直接使用生成警告/错误,任何间接使用都会被默默忽略。
我认为下面的例子很好地说明了这个问题:
html - IFrame (HTML) 是否已过时?
收到关于此的矛盾信息,希望他们不是。我无法想象对它的支持会停止,因为有大量网站使用它们。
一些额外的问题:
- 他们为什么要逐步淘汰这个标签?
- 有什么替代方案吗?
sql - 每年需要更改数据库架构。应该使用哪种策略?
我们公司每年都会举办一个会议/展台,参与者可以在这里展示他们的产品。
我们有一个网络应用程序,让参与者可以注册会议。他们可以输入公司名称、帐单信息等信息。
似乎参与者需要输入哪些信息的要求每年都在变化。
IE ,一年参与者可能需要输入他们想要的展位大小,明年不再需要,依此类推。一年,您可能只需要输入所需的 m^2 总数,而第二年,您可能需要添加所需的长度、高度和楼层数。
多年来,这导致数据库模式变得非常疯狂。现在,我们的数据库中有很多“过时”的字段和表,并且开始看起来很混乱。由于历史原因,我们不能只是将模式重置为每年的基础。我们可能需要一些旧会议的数据。
所以:有没有人知道我们如何处理这个问题?我能想到的唯一解决方案是
- 为每个会议版本我们的数据库,即
- 将所有“变化”信息存储为 xml
如果有人对如何处理不断发展的数据库和处理过时的数据有一些好的文献,那就太好了!
vb.net - 在 VB.NET 中抑制过时的警告
我在Visual Studio 2008中有使用过时方法的 VB.NET 代码,并希望禁止显示警告。不幸的是,遵循建议并不是一个好的解决方案,因为它需要使用不同的类,它在重要方面的工作方式不同。
我正在尝试使用 System.Diagnostics.CodeAnalysis.SuppressMessage 来抑制警告,但我不知道该写什么作为属性的参数并且找不到任何相关参考。
我还应该说,右键单击错误列表中的错误我没有任何“抑制消息”选项。
c# - 我应该使用什么来代替 LoadWithPartialName()?
我正在使用 LoadWithPartialName() 加载程序集,但 VS 告诉我它已过时并改用 Load()。但是,我找不到任何方便的重载。
有一个 Load(string) 要求输入一个“全名”,如果我对 MSDN 文档的理解正确,它包括版本号等内容。
还有一个接受“显示名称”的负载(字符串,证据)。问题是我根本不知道“显示名称”是什么,因为我在第一个函数中使用的“部分名称”似乎不起作用。
那么,应该怎么做呢?
java - 为什么 Java Vector(和 Stack)类被认为已过时或不推荐使用?
为什么 Java Vector 被视为遗留类、已过时或已弃用?
处理并发时它的使用是否有效?
如果我不想手动同步对象并且只想使用线程安全集合而不需要制作底层数组的新副本(就像CopyOnWriteArrayList
那样),那么可以使用Vector
吗?
怎么样Stack
,它是 的子类Vector
,我应该用什么来代替它?
security - 公共覆盖函数 GetBytes() 因为 Byte() 已过时
诗人试图表达什么?
公共覆盖函数 GetBytes() 由于 Byte() 已过时:Rfc2898DeriveBytes 替换 PasswordDeriveBytes 以从密码中获取密钥材料,并且在新应用程序中是首选。
我要不要换这个...
...什么?