我对C#语言比较陌生,但是在谷歌搜索和Stack Overflow的帮助下我已经完成了许多应用程序,包括使用Office,系统服务,进程,WMI,SQL,Linq和Active Directory. ..
虽然尽管在使这些应用程序正常运行方面取得了成功,但我仍然不确定C#语言中的许多内容,例如良好的代码实践和使用许多关键字等.
C#类; 我知道我可以用它们做什么,我知道构造函数和析构函数,实例化和属性,但我不确定何时应该使用它们.到目前为止,我已将我的所有代码写入Form1.cs文件中的不同方法中.这些方法使用完全不同的API执行各种不同的操作.这显然意味着尝试维护代码变得非常困难,而且我发现在Form1.cs中找到任何内容会越来越令人沮丧.
我的问题是,我应该将我的代码分成不同的类吗?我试图将与SqlConnection和SqlCommands相关的东西拆分成一个单独的类,但是在我的Form1.cs中没有多次实例化同一个类,我看不出这更容易或任何好处.
我一直试图将一个新的应用程序拼凑在一起,但这次将功能保留在它自己的类中,我希望有人可以告诉我,我是愚蠢的,做错了或者至少给了我一些指导.
此应用程序最终将从App.Config加载我的连接字符串,连接到SQL数据库并使用数据库中的多个表填充DataSet.这绝不是功能性的,因为我无法理解整个Classes问题.
非常感谢 :)
partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
string myConnectionString;
private void Form1_Load(object sender, System.EventArgs e)
{
AppConfig cfg = new AppConfig();
if (cfg.loadConfig())
{
myConnectionString = cfg.myConnectionString();
}
if (!String.IsNullOrEmpty(myConnectionString))
{
SQLConn SQL = new SQLConn();
if (SQL.createConnection(myConnectionString))
{
MessageBox.Show("Connected!");
}
}
}
}
class myDataSet
{
DataSet DataSet()
{
DataSet ds = new DataSet();
SQLConn sql = …Run Code Online (Sandbox Code Playgroud) 我有一个.NET Core项目,根据我的project.json文件定位.NET Framework;
"frameworks": {
"net461": {
"dependencies": { }
}
}
Run Code Online (Sandbox Code Playgroud)
我试图找到一种方法将一些(本机)依赖项复制到我的输出构建目录,但我很难找到正确的方法来做到这一点.
当我构建这个项目时,我的输出就转到了bin\Debug\net461\win7-x64.我想知道是否有一种方法来检索输出路径?$(TargetDir)给我我的bin\目录,但有一个变量要检索bin\Debug\%FRAMEWORK%\%RUNTIME%?
我也应该在MSBuild上使用project.json脚本吗?
编辑 - 2017年5月请在下面看到我的答案.简而言之,这从未得到过支持project.json,但鉴于project.jsonVS2017 的弃用,这个问题已不再适用.
我有一个数据结构,其中一个键允许一组动态值。我知道这些值的潜在类型,但我无法在 Typescript 中表达。
interface KnownDynamicType {
propA: boolean;
}
interface OtherKnownDynamicType {
propB: number;
}
// I want to allow dynamic to accept either KnownDynamicType, OtherKnownDynamicType or a string as a value
interface DataModel {
name: string;
dynamic: {[key: string]: KnownDynamicType | OtherKnownDynamicType | string};
}
const data: DataModel = { // Set up some values
name: 'My Data Model',
dynamic: {
someKnownType: {
propA: true
},
someOtherKnownType: {
propB: 1
},
someField1: 'foo',
someField2: 'bar'
}
}
data.dynamic.foo = …Run Code Online (Sandbox Code Playgroud) .net ×1
.net-core ×1
asp.net-core ×1
c# ×1
class ×1
code-layout ×1
msbuild ×1
project.json ×1
types ×1
typescript ×1