在Visual Studio中,您可以创建至少3种不同类型的类库:
虽然第一个是我们多年来一直使用的,但我遇到的一个主要问题是何时使用.NET Standard和.NET Core类库类型.最近,当我尝试多目标不同的框架版本并创建一个单元测试项目时,我一直被这种做法所困扰.
那么,类库(.NET标准版)和类库(.NET Core)之间有什么区别,为什么两者都存在,什么时候应该使用另一个呢?
我创建了一个Android项目,并在我的项目中添加了一个外部JAR(hessian-4.0.1.jar).然后我将JAR添加到构建路径并在Order和Export中将其检出.
看起来忽略了Order和Export,并且运行时缺少外部JAR中的所有类.
在使用Eclipse插件构建Android应用程序时,是否有从外部JAR正确包含所需类的技巧?我不想使用蚂蚁或Maven.
我目前正在将代码从app_code文件夹移动到类库.我用[System.Web.Script.Serialization.ScriptIgnore]属性标记了几个方法.我的类库无法看到此命名空间.我的添加引用对话框无法看到此命名空间.如何在类库中正确使用此标记?
这是错误: 找不到类型或命名空间名称'ScriptIgnoreAttribute'(您是否缺少using指令或程序集引用?)
我丢失了类库的解决方案,我可以打开.dll创建的文件class-library.
我看不到VS2008向导为类库生成的app.config文件.在我的研究中,我发现在应用程序中只存在一个app.config.
将app.config手动添加到类库中是否是一件坏事,还是有任何其他方法可以满足类库中app.config的用途?
我需要在app.config文件中存储log4net配置信息.
我收到了以下警告
'System.Configuration.ConfigurationSettings.AppSettings'已过时:''此方法已过时,已被System.Configuration取代!System.Configuration.ConfigurationManager.AppSettings"'
你是如何解决的?
长话短说,由于架构的一些问题以及有人已经在类库中放了几个.aspx文件的事实,我想完成更改并将类库转换为Web应用程序.这是使用Visual Studio 2010和.NET 4.0.有这么简单的方法吗?谢谢!
编辑:我希望有一个比重新创建项目更好的方法,当我尝试创建一个新项目时,我遇到了太多关于破坏引用的问题,包括我似乎永远无法解决的问题.
.net class-library web-applications visual-studio-2010 visual-studio
问题:考虑以下浮点数[]:
d[i] = 1.7 -0.3 2.1 0.5
Run Code Online (Sandbox Code Playgroud)
我想要的是一个int []数组,它表示带索引的原始数组的顺序.
s[i] = 1 3 0 2
d[s[i]] = -0.3 0.5 1.7 2.1
Run Code Online (Sandbox Code Playgroud)
当然,可以使用自定义比较器,自定义对象的排序集,或者通过简单地对数组进行排序,然后搜索原始数组中的索引(颤抖)来完成.
我实际上正在寻找的是Matlab的sort函数的第二个返回参数的等价物.
有没有一种简单的方法(<5 LOC)?可能有一个解决方案,不需要为每个元素分配一个新对象?
更新:
谢谢你的回复.不幸的是,迄今为止提出的所有内容都不像我希望的简单而有效的解决方案.因此,我在JDK反馈论坛中打开了一个帖子,建议添加一个新的类库函数来解决这个问题.让我们看看Sun/Oracle对此问题的看法.
http://forums.java.net/jive/thread.jspa?threadID=62657&tstart=0
我有一个代表我的逻辑层的类库.对于那个库我已经为Google.Apis.Analytics.v3添加了一个nuget包 - 它安装了包及其所有依赖项.
我有一个控制台应用程序,它使用该逻辑类库(常规引用).一切都写得很好.
问题是在运行时它抛出了一个异常,即找不到Google.Apis.dll.此DLL是与nuget一起下载的依赖项.
检查BIN文件夹,我发现在类库bin文件夹中存在此DLL,但在控制台应用程序BIN文件夹中它不存在(而其他相关的DLL是).所以这意味着编译期间复制的并非所有引用.
我在网上搜索过,找到了所有不起作用的解决方法(比如手动编辑项目文件并删除该dll定义中的真正xml行).
我最终做的是将相同的nuget库添加到我的控制台应用程序 - 它可以工作,但感觉有点脏,而不是应该的方式.我认为控制台应用程序是客户谁应该从该逻辑类库获得它的服务,应该知道它的东西没有"客户"担心它.
此外,该控制台应用程序并不是唯一一个将使用该服务的人,我也计划使用该功能的网络应用程序 - 所以我需要将相同的nuget添加到该Web应用程序中 - 再次,感觉有点乱......
只有我吗?这是正确的方法吗?我正在考虑编写一个WCF项目来处理这个功能 - 但这似乎只是在功能方面的一些开销,并且可能会减慢我的工作流程,以便在我看来保持"更清洁".
我只是过度思考吗?
谢谢
我在 Visual Studio 16.8.1 中的“添加新项目”窗口中看不到类库 (.NET) 选项。如何创建类库 (.NET) 项目?(不是 .Net Core 或 .Net Framework)
class-library ×10
.net ×5
c# ×5
.net-core ×1
android ×1
arrays ×1
asp.net ×1
build.gradle ×1
class ×1
eclipse ×1
java ×1
log4net ×1
namespaces ×1
sorting ×1