c# - How to version middle tier .NET application classes/methods -
we have typical n-layer .net application sits in between our database , web api service layer. application consists of business layer, data repository/access along related dtos , business objects.
we have solutions in place version our stored procedures , our web api endpoints. issue solution version middle layer, actual class methods , schema objects. google searches come results versioning source code in source control solution or how version using assembly info, neither of these referring results limited.
so example, have 2 endpoints:
...api/v1/tax/charges
...api/v2/tax/charges
v1 must hit 1 version of method calculatetaxpctgs , v2 hits version updated business logic. along both needing use different versions of poco tax , taxitems changed name of 1 field in v2.
the easy develop hard manage , rigid/static solution create 2 different methods, calculatetaxpctgs_v1 , calculatetaxpctgs_v2. doesn't seem idea.
hard find best practices or alternative solutions dilemma. enterprise application takes millions of requests every day performance extremely important code management , reliability.
obviously depends on how solution put redirecting assembly versions leverage :
https://msdn.microsoft.com/en-us/library/7wd6ex19%28v=vs.110%29.aspx
you can redirect app use different version of assembly in number of ways: through publisher policy, through app configuration file; or through machine configuration file.
Comments
Post a Comment