我是C#Web API的新手,我对.cs文件和文件夹结构感到困惑,我不确定在哪里放置公共对象&功能
例如,现在我创建了一个简单的类Obj,一个函数和两个控制器:
// Obj.cs under Models folder
public class Obj
{
public int X;
public int Y;
public Obj()
{ x = 0; y = 0;}
}
public int GetRandom()
{
Random r = new Random();
return r.Next();
}
public class XController : ApiController
{
public void Add()
{
obj1.X += GetRandom();
}
}
public class YController : ApiController
{
public void Add()
{
obj1.Y += GetRandom();
}
}
问题是我应该在哪里创建obj1和函数,以便两个控制器也能够访问它们。 目前,我只是在整个项目下创建一个额外的.cs文件,并将它们设置为静态。
// TestingExample.cs under project
public static class TestingExample
{
public Obj obj1;
public void Init()
{
obj1 = new Obj();
}
public int GetRandom()
{
Random r = new Random();
return r.Next();
}
}
// XController.cs under Controllers folder
public class XController : ApiController
{
public void Add()
{
TestingExample.obj1.X += TestingExample.GetRandom();
}
}
// YController.cs under Controllers folder
public class YController : ApiController
{
public void Add()
{
TestingExample.obj1.Y += TestingExample.GetRandom();
}
}
结构将如下:
Project
---Models
-----Obj.cs
---Controllers
------XController.cs
------YController.cs
---TestingExample.cs
但我认为这样做似乎非常愚蠢,并使项目结构变得非常糟糕。 有谁能建议我对这个案子有什么好的做法?谢谢!