Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 862185
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 15, 20262026-05-15T09:06:02+00:00 2026-05-15T09:06:02+00:00

I have a .net website written in C# and will make functionalities that other

  • 0

I have a .net website written in C# and will make functionalities that other developers can use.
So I will make some default implementation and a developer can overwrite some methods

Example:
i have a class ShoppingCart and a class Product the class product haves a method getProductPrice
the shoppingcart will call the method getProductPrice for calculating the total price of cart

The ShoppingCart and Product are in the same project and i will give the developers the .dll so they can’t change the source code so we can update the assembly later

So they need to make a other project and extend the product class and overwrite the method getProductPrice so they can implement there own logic
The problem is that the shoppingcart will not call the extended method but the original

If we make already a extended project for the developers and the shoppingcart will call the extended method then we have a circular reference
because the extended product needs a reference to product and the shopping cart to the extended product

Partial classes also don’t works because we only can use partials within the same assembly

Does anyone have a suggestion ?

Thanks in advance.

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-15T09:06:02+00:00Added an answer on May 15, 2026 at 9:06 am

    You should mark all your Product methods as virtual:

    public virtual decimal GetProductPrice() { };
    

    Then the developers who will take over later can inherit from the product and override the method:

    public class OverriddenProduct : Product
    {
       public override decimal GetProductPrice() { }
    }
    

    Because OverridenProduct (in my example above) inherits from Product, it can still be added into the Product collection within your ShoppingCart class.

    Just symantics I guess, but the ShoppingCart class’s method should probably be GetTotalPrice() not GetProductPrice() as I’m assuming you’re getting the total cost of the products in the cart.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.