




































































Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
The exam assesses knowledge of configuring and customizing e-commerce platforms, including the integration of third-party services, setting up configurations, and enhancing platform functionality.
Typology: Exams
1 / 76
This page cannot be seen from the preview
Don't miss anything!





































































Question 1. Which component is primarily responsible for handling B2B catalog data in Configured Commerce? A) Web API Gateway B) Product Service Layer C) Order Processing Engine D) Customer Management Module Answer: B Explanation: The Product Service Layer manages product, category, and attribute data, serving as the core for catalog operations. Question 2. In a typical Configured Commerce deployment, which environment variable is used to specify the SQL Server connection string? A) APP_DB_HOST B) CONNECTION_STRING C) SQL_CONNECTION_STRING D) DATABASE_URL Answer: C Explanation: SQL_CONNECTION_STRING is the standard variable that holds the full connection string for the SQL Server instance. Question 3. What is the recommended way to add a new field to an existing product entity for search indexing? A) Directly modify the database schema B) Create a custom attribute and map it in the product index pipeline C) Edit the product view model class D) Add a column to the Products table via a migration script Answer: B Explanation: Configured Commerce encourages adding custom attributes and extending the indexing pipeline rather than altering the core schema. Question 4. Which of the following best describes the purpose of the “Extensibility Points” in Configured Commerce? A) To replace the entire platform with a custom framework B) To allow developers to inject custom logic without modifying core code
C) To provide a UI theme editor for storefront designers D) To manage database backups automatically Answer: B Explanation: Extensibility points are hooks where custom code can be added, preserving upgradeability and maintainability. Question 5. When configuring role-based access control (RBAC), which entity defines the permissions a user can have? A) System Setting B) Security Policy C) Role D) Permission Set Answer: C Explanation: Roles aggregate permissions; assigning a role to a user determines their access rights. Question 6. Which cache type is most appropriate for storing product price lists that rarely change but are read frequently? A) In-memory L1 cache B) Distributed Redis cache C) File-system cache D) Browser local storage Answer: B Explanation: Redis provides a distributed, scalable cache suitable for data that must be shared across multiple web nodes. Question 7. A developer needs to store temporary data for a background import job. Which storage option should be used? A) Custom Object with permanent persistence B) Session state C) Azure Blob storage with a temporary container D) In-process static variable Answer: C
Question 11. What is the primary benefit of using Custom Objects instead of extending existing system entities? A) Faster query performance B) No need to modify database schema C) Automatic UI generation in admin console D) Built-in versioning support Answer: B Explanation: Custom Objects allow storing additional data without altering the core schema, reducing upgrade risk. Question 12. Which pipeline extension would you implement to modify the discount calculation for a contract-price list? A) OrderSubmitPipeline B) PricingCalculationPipeline C) PromotionEligibilityPipeline D) CartValidationPipeline Answer: B Explanation: The PricingCalculationPipeline is responsible for determining final prices, making it the correct extension point for contract pricing. Question 13. In Configured Commerce, what does the “RFQ” acronym stand for? A) Request For Quantity B) Return For Quotation C) Request For Quote D) Reorder Fulfillment Query Answer: C Explanation: RFQ stands for Request For Quote, a B2B feature allowing customers to request pricing for complex orders. Question 14. Which of the following is NOT a valid scope for a system setting? A) Global (applies to all sites) B) Site-specific
C) User-specific D) Role-specific Answer: D Explanation: System settings are scoped globally, per site, or per user; role-specific scoping is not supported out of the box. Question 15. When integrating with an ERP system, which pattern is most commonly used to synchronize product inventory? A) Pull-based REST polling B) Push-based webhook notifications C) Direct database replication D) File-based CSV import Answer: A Explanation: Pull-based REST polling allows the Commerce platform to request up-to-date inventory data on a schedule. Question 16. Which tool is recommended for debugging server-side code in a local Configured Commerce project? A) Chrome DevTools B) Visual Studio Debugger C) Postman Console D) SQL Server Profiler Answer: B Explanation: Visual Studio provides breakpoints, watch windows, and step-through debugging for .NET code. Question 17. What is the purpose of the “Catalog Index Rebuild” process? A) To clear the database cache B) To regenerate the search index after product data changes C) To backup catalog data to cloud storage D) To synchronize pricing with external systems Answer: B
B) Use environment variables and secret managers C) Encode them with Base64 and commit to source control D) Place them in a public GitHub repository Answer: B Explanation: Environment variables and secret management services keep secrets out of source code and reduce exposure. Question 22. Which logging level should be used for routine informational messages that are useful for tracing normal execution? A) Debug B) Information C) Warning D) Error Answer: B Explanation: The Information level captures standard operational messages without the verbosity of Debug. Question 23. When creating a custom scheduled job, which attribute must be applied to the class to define its execution schedule? A) [CronExpression] B) [ScheduledJob] C) [JobSchedule] D) [RecurringTask] Answer: B Explanation: [ScheduledJob] decorates the class with metadata, including the cron expression for execution. Question 24. Which API method would you call to retrieve the current user's account hierarchy? A) GET /api/accounts/{id}/hierarchy B) POST /api/users/accountTree C) GET /api/customers/{id}/children D) GET /api/accounttree?userId={id}
Answer: A Explanation: The standard endpoint /api/accounts/{id}/hierarchy returns the full hierarchy for a given account. Question 25. In Configured Commerce, what does the “L2 cache” refer to? A) Browser local storage cache B) Distributed cache shared across web servers C) In-process cache scoped to a single request D) File-system cache for static assets Answer: B Explanation: L2 cache is a shared, distributed cache layer (e.g., Redis) that survives across requests and servers. Question 26. Which of the following is a valid reason to create a custom pipeline instead of using an existing one? A) To replace the entire checkout process B) To add a new validation step that does not exist in the default pipeline C) To change the UI theme of the storefront D) To modify the database connection string Answer: B Explanation: Custom pipelines are used to insert additional processing logic, such as new validation steps. Question 27. Which entity represents a B2B customer’s purchasing authority level within Configured Commerce? A) Role B) Permission C) Account Tier D) User Profile Flag Answer: C Explanation: Account Tier defines the purchasing authority and discount eligibility for B2B customers.
A) They are stored in the same database as core entities. B) They support versioning out of the box. C) They can be exposed via the platform’s REST API. D) They require a separate repository implementation. Answer: B Explanation: Custom Data Entities do not automatically include versioning; this must be implemented manually if needed. Question 32. Which service is responsible for translating product attribute values into localized strings? A) LocalizationService B) TranslationEngine C) InternationalizationProvider D) ResourceManager Answer: A Explanation: LocalizationService handles culture-specific rendering of attribute values. Question 33. In the context of Configured Commerce, what does “PunchOut” enable? A) Direct integration with supplier catalogs from the buyer’s procurement system B) Real-time chat support on the storefront C) Automatic price negotiation using AI D) Bulk import of product images via FTP Answer: A Explanation: PunchOut allows buyers to access supplier catalogs directly from their procurement platform. Question 34. Which HTTP status code should be returned by a custom API when the requested product is not found? A) 200 OK B) 400 Bad Request C) 404 Not Found
D) 500 Internal Server Error Answer: C Explanation: 404 correctly indicates that the resource does not exist. Question 35. Which of the following best describes the purpose of the “SiteContext” object in server-side code? A) Holds the current user’s session data B) Provides information about the current website, language, and currency C) Manages database transaction scopes D) Stores temporary cache entries for the request Answer: B Explanation: SiteContext encapsulates site-specific settings such as language and currency for the current request. Question 36. When implementing a custom payment gateway, which interface must be implemented to handle payment authorization? A) IPaymentProcessor B) IAuthorizationHandler C) IPaymentGatewayAdapter D) IPaymentService Answer: C Explanation: IPaymentGatewayAdapter defines the contract for communicating with external payment systems. Question 37. Which of the following is the recommended way to add a new field to the checkout address form without modifying core views? A) Edit the original Razor view file directly B) Create a view component and inject it via a pipeline extension C) Add a JavaScript DOM manipulation script after page load D) Modify the database schema and regenerate the view Answer: B Explanation: Using a view component (or pipeline extension) preserves core files and supports upgrades.
B) OAuth2/OpenID Connect C) Windows Authentication D) LDAP Authentication Answer: A Explanation: Forms Authentication is not a default option; the platform uses token-based, OAuth/OpenID, or Windows/LDAP integrations. Question 42. When configuring a new shipping provider, which XML element defines the carrier’s service codes? A) B) C) D) Answer: B Explanation: `` contains the list of service codes that the provider supports. Question 43. Which of the following statements about “Entity Framework Core” in Configured Commerce is TRUE? A) It is the only supported ORM for all data access. B) It is used only for read-only operations. C) It can be combined with custom repositories for complex queries. D) It automatically generates UI forms for custom entities. Answer: C Explanation: EF Core can be used alongside custom repositories to handle advanced query scenarios. Question 44. What is the primary purpose of the “SiteMapProvider” service? A) To generate XML sitemaps for SEO B) To build navigation menus based on catalog structure C) To map URLs to controller actions D) To store user navigation history Answer: B
Explanation: SiteMapProvider constructs hierarchical navigation structures reflecting categories and pages. Question 45. Which of the following is a correct way to retrieve a system setting value in code? A) Settings.Get("MySetting") B) ConfigurationManager.AppSettings["MySetting"] C) SystemSettingsProvider.GetValue("MySetting") D) SiteContext.Current.GetSetting("MySetting") Answer: C Explanation: SystemSettingsProvider.GetValue fetches platform-managed settings respecting scopes. Question 46. In Configured Commerce, which component is responsible for translating a product’s SKU into a URL-friendly slug? A) UrlRewriterService B) SlugGenerator C) ProductUrlProvider D) RoutingEngine Answer: C Explanation: ProductUrlProvider creates SEO-friendly URLs based on SKU and naming conventions. Question 47. Which of the following is the most appropriate method to handle a large volume of order imports without blocking the web thread? A) Synchronous controller action with a loop B) BackgroundWorker class invoked from the controller C) Queue the import request to a message bus and process with a worker role D) Increase the request timeout and process inline Answer: C Explanation: Using a message bus decouples the import from the request, enabling asynchronous processing.
B) SQL Server Profiler C) Postman D) Fiddler Answer: B Explanation: SQL Server Profiler captures and analyzes T-SQL statements for performance tuning. Question 52. In the context of Configured Commerce, what does “CQRS” stand for and why might it be used? A) Central Query Repository Service – to centralize read operations B) Command Query Responsibility Segregation – to separate read and write models for scalability C) Cached Query Result Set – to improve search performance D) Continuous Quality Regression Suite – for automated testing Answer: B Explanation: CQRS separates command (write) and query (read) responsibilities, allowing independent optimization. Question 53. Which of the following is NOT a valid way to trigger a custom scheduled job? A) Cron expression defined in the attribute B) Manual invocation via admin UI C) HTTP request to a dedicated endpoint D) Real-time event listener on product creation Answer: D Explanation: Real-time events are not part of scheduled job triggering; they are immediate, not scheduled. Question 54. Which of the following statements about “Customer Groups” is TRUE? A) They are used to assign different tax rates only. B) They can control pricing, promotions, and visibility simultaneously. C) They are immutable after creation. D) They replace the need for account hierarchies.
Answer: B Explanation: Customer Groups enable multiple business rules, including pricing tiers, promotion eligibility, and catalog visibility. Question 55. When deploying to a containerized environment, which file typically holds the environment variables for the container? A) docker-compose.yml B) appsettings.Development.json C) .env D) web.config Answer: C Explanation: .env files are commonly used to inject environment variables into Docker containers. Question 56. Which of the following is the correct order of operations for a typical product import workflow? A) Validate → Transform → Persist → Index → Notify B) Persist → Validate → Index → Transform → Notify C) Transform → Validate → Persist → Notify → Index D) Index → Validate → Transform → Persist → Notify Answer: A Explanation: The workflow validates data, transforms it into the required format, saves it, updates the search index, and then sends notifications. Question 57. Which of the following best describes the purpose of the “CartService”? A) To manage user authentication tokens B) To handle all business logic related to the shopping cart lifecycle C) To generate PDF invoices for orders D) To synchronize inventory levels with external WMS Answer: B Explanation: CartService encapsulates operations such as adding items, applying promotions, and calculating totals.
B) Register the entity in Startup.ConfigureServices using AddCustomApi() C) Create a DTO, map it, and add a route using MapCustomEntity in the routing configuration D) Modify the existing ProductsController to include the new entity type Answer: C Explanation: Exposing a custom entity typically involves creating a DTO, mapping logic, and registering a route via MapCustomEntity. Question 62. Which of the following best explains why you would use a “Read-Only Repository” pattern? A) To prevent accidental writes during unit testing B) To enforce write permissions at the database level C) To improve performance by bypassing change tracking D) To automatically generate CRUD UI pages Answer: C Explanation: A read-only repository avoids Entity Framework change tracking, enhancing query performance. Question 63. In Configured Commerce, what is the purpose of the “Price List” entity? A) To store shipping rates per region B) To define a set of product prices applicable to a specific customer or contract C) To manage tax calculation rules D) To list promotional codes available to users Answer: B Explanation: Price Lists hold customer-specific or contract-specific pricing information. Question 64. Which of the following is the correct way to enable HTTPS redirection in a Configured Commerce web application? A) Add `` to appsettings.json B) Call app.UseHttpsRedirection(); in the Configure method of Startup.cs C) Set RedirectToHttps="true" in web.config
D) Install a third-party SSL middleware package Answer: B Explanation: app.UseHttpsRedirection() is the standard ASP.NET Core middleware to enforce HTTPS. Question 65. Which logging framework is natively integrated with Configured Commerce for structured logging? A) NLog B) Serilog C) Log4Net D) Microsoft.Extensions.Logging Answer: D Explanation: The platform uses the built-in Microsoft.Extensions.Logging abstraction for structured logs. Question 66. When customizing the checkout address validation, which data source should you query to verify postal codes? A) In-memory dictionary B) External postal code API service C) Hard-coded list in the controller D) Product catalog database Answer: B Explanation: An external postal code service provides up-to-date validation for addresses. Question 67. Which of the following is a key advantage of using “Dependency Injection” (DI) in Configured Commerce modules? A) Eliminates the need for unit testing B) Allows swapping implementations without changing consuming code C) Guarantees compile-time safety for all services D) Automatically scales services horizontally Answer: B Explanation: DI enables loose coupling, making it easy to replace implementations (e.g., for testing or alternative providers).