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

Popular posts from this blog

java - Custom OutputStreamAppender not run: LOGBACK: No context given for <MYAPPENDER> -

java - UML - How would you draw a try catch in a sequence diagram? -

c++ - No viable overloaded operator for references a map -