WCF Service End Points?

I'm buildiing my first WCF service as the back end to a lob application and I'm a little confused as to what's the best way to design it.

There will be hundreds of functions in this, should I have these all under one service (endpoint?) or should it be seperated into different services ie.

CustomerService:

addCustomer
getCustomer
getCustomerCollection
etc.

PaymentService:

addPayment
getPayment
etc.

Doing it this way would mean that I would end up calling functions inside one service from another service though, is this good practice?

Thanks!
badpilotAsked:
Who is Participating?
 
vishwajanCommented:
You would need to identify the functional areas and divide them in to different services. For eg if your service method calls a data access layer which would call the Stored procedure, then identify all those functions and put them in one service called Data Manager. If you are doing some business calculations then identify all those and put them in Business Implementation Service.

Do this analysis for all the methods and finally u would end up modularizing your methods in to different categories, which would be easily maintainable.

Hope this is helpful to you.
0
 
vishwajanCommented:
A suggestion would be services are meant for configuring. Have a business logic layer which would be called by the service. I suggest you to keep different services but calling methods inside one service from another is not a good practise. If you can elaborate on it we could do a better design of your problem
0
 
badpilotAuthor Commented:
I'm confused by what you mean by services are meant for configuring?

I want to create a WCF service that will deal with the business logic of the application. So are you saying that all of my methods and functions (which will be in their hundreds) should all be under the one service and endpoint?

Thanks
0
Cloud Class® Course: Python 3 Fundamentals

This course will teach participants about installing and configuring Python, syntax, importing, statements, types, strings, booleans, files, lists, tuples, comprehensions, functions, and classes.

 
vishwajanCommented:
Nope, that is not what i meant. Have a business layer where you write the logic. Your service layer has to just call the method in Business Layer. Your service should just act as a medium to your UI layer and your business layer. This is what i meant in service should be just used for configuring.
0
 
vishwajanCommented:
Adding to that too many service calls is a costly process
0
 
badpilotAuthor Commented:
I think I understand what you mean, I will have a business layer where all of they heavy work is done but that still doesn't avoid the fact that my service will have hundreds of functions that the presentation layer will call and then the service will call the methods in the BL.

I guess I'm asking how I can separate these functions up so I can better manage them when creating the service and when calling it, or is that even necessary.

Thanks for bearing with me on this.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.