小编rkd*_*rkd的帖子

带有路由属性的不明确的控制器名称:具有相同名称和不同命名空间的控制器,用于版本控制

我正在尝试添加API版本,我的计划是为不同命名空间中的每个版本创建一个控制器.我的项目结构如下所示(注意:每个版本没有单独的区域)

Controllers
 |
 |---Version0
 |      |
 |      |----- ProjectController.cs
 |      |----- HomeController.cs
 |
 |---Version1
       |
       |----- ProjectController.cs
       |----- HomeController.cs
Run Code Online (Sandbox Code Playgroud)

我正在使用RoutingAttribute作为路由.因此,Version0中的ProjectController具有路由功能

namespace MyProject.Controllers.Version0
{
   class ProjectController : BaseController
   {
     ...

     [Route(api/users/project/getProjects/{projectId})]
     public async GetProjects(string projectId) 
     {
       ...
     }
  }
}
Run Code Online (Sandbox Code Playgroud)

和Version1中的ProjectController具有路由功能

namespace MyProject.Controllers.Version1
{
   class ProjectController : BaseController
   {
     ...

     [Route(api/v1/users/project/getProjects/{projectId})]
     public async GetProjects(string projectId) 
     {
      ...
     }
  }
}
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试使用该服务时,我得到404-NotFound.

如果我将控制器重命名为具有唯一名称(Project1Controller和Project2Controller),则路由可以正常工作.但是,我试图避免重命名以简化.

我按照此链接解决了问题,但没有帮助.我确实创造了一些领域但仍然没有成功.在global.aspx文件中添加路由逻辑没有帮助.命名空间也不起作用. http://haacked.com/archive/2010/01/12/ambiguous-controller-names.aspx/

上面的链接建议创建区域,但属性路由不支持按链接区域:http: //www.asp.net/web-api/overview/web-api-routing-and-actions/attribute-routing-在-Web的API-2

还有其他解决方案吗?RoutingAttributes有错误吗?

谢谢!

c# asp.net asp.net-web-api asp.net-web-api-routing asp.net-web-api2

15
推荐指数
2
解决办法
1万
查看次数

SQL - 使用UNION加入?? UNION使用JOIN?

在我的一次采访中我被问到了这个问题.你能用UNION关键字做JOIN吗?你能用JOIN关键字做UNION吗?

那是 - 1.我应该得到与JOIN相同的输出而不使用JOIN关键字,但使用UNION关键字?2.我应该获得与UNION相同的输出而不使用UNION关键字,但使用JOIN关键字?

如果可能的话,你能给我一个如何做到这一点的例子吗?

sql database union join

7
推荐指数
2
解决办法
9686
查看次数

MeshLab:使用我自己的计算法线渲染obj文件

我正在尝试用顶点编写一个obj文件.我在我的代码中计算顶点法线并写入此文件.当我尝试在Meshlab中渲染这个文件时,它正确地读取顶点,但是当我转到'Render-> Show vertex normals'时,它没有显示我计算的法线.相反,MeshLab会计算自己的法线并显示它们.

我不确定如何可视化我计算/写入文件的法线.我想稍后根据我的计算法线应用Meshlab着色器.

为了测试这个,我创建了一个测试obj文件 -

vn 0.517350 0.517350 0.517350
v 0.500000 0.500000 0.500000
vn -0.333333 0.666667 0.666667
v -0.500000 0.500000 0.500000
vn 0.666667 -0.333333 0.666667
v 0.500000 -0.500000 0.500000
vn -0.666667 -0.666667 0.333333
v -0.500000 -0.500000 0.500000
f 1//1 2//2 3//3
f 4//4 3//3 2//2
Run Code Online (Sandbox Code Playgroud)

这只是一个方格.现在,如果我更改此文件中的正常值,当我选择"渲染 - >显示顶点法线"时,它仍会显示自己的顶点法线.我如何拥有自己的法线并应用适用于我的计算法线的着色器?请帮忙.

谢谢!!

3d graphics mesh normals meshlab

6
推荐指数
1
解决办法
2126
查看次数