How should you build the method?

Posted by: Pdfprep Category: 70-487 Tags: , ,

Topic 2, ASP.NET MVC

Background

You are developing an ASP.NET MVC application in Visual Studio 2012 that will be used to process orders.

Business Requirements

The application contains the following three pages:

– A page that queries an external database for orders that are ready to be processed. The user can then process the order.

– A page to view processed orders.

– A page to view vendor information.

The application consumes three WCF services to retrieve external data.

Technical Requirements

Visual Studio Solution:

The solution contains the following four projects.

– ExternalQueue: A WCF service project used to communicate with the external order database.

– OrderProcessor: An ASP.NET MVC project used for order processing and logging order metadata.

– OrderUpload: A WCF service project used to submit order data to an external data source.

– Shipping: A WCF service project used to acquire shipping information.

ExternalQueue Project:

Entity Framework is used for data access. The entities are defined in the ExternalOrders.edmx file as shown in the following diagram.

The project contains two services defined in the following files.

– IExternalQueueService.es

– ExternalQueueService.svc.

The ExternalQueue.Helpers namespace contains a definition for a class named OrderNotFound Exception.

OrderProcessor Project:

Entity Framework is used for data access. The entities are defined in the ProcessedOrders.edmx file as shown in the following diagram.

The classes are contained in the OrderProcessor.Entities namespace. The project contains the following two controllers.

– InboundQueueController.es

– ProcessedOrderController.es

WCF service proxies to the ExternalQueue, Shipping and OrderUpload services have been generated by using the command prompt. The ExecuteCommandProcedure() method in the ExternalQueueService.svc file must run asynchronously.

The ProcessedOrderController controller has the following requirements.

The GetVendorPolicy() method must enforce a 10 minute absolute cache expiration policy.

The GetProcessedOrders() method must return a view of the 10 most recently processed orders.

OrderUpload Project:

The project contains two services defined in the following files:

– IUploadCallbackService.es

– UploadCallbackService.svc

Data Access is maintained in a file named UploadOrder.es.

Shipping Project:

Entity Framework is used for data access. The entities are defined in the ExternalOrders.edmx file as shown in the following diagram.

The Custom Tool property for ExternalOrders.edmx has been removed.

POCO classes for the Entity Model are located in the ShippingAddress.es file. The POCO entity must be loaded by using lazy loading.

The project contains two services defined in the following files.

– IShippingService.es

– ShippingService.svc.

The IShippingService contract must contain an operation that receives an order number as a parameter. The operation must return a class named ShippingInfo that inherits from a class named State.

Application Structure

DRAG DROP

The GetVendorPolicy() private method in the ProcessedOrderController controller is returning a

CacheItemPolicy object with default values. The returned policy must expire if the external file located at C:TriggersVendorTrigger.txt has been modified or the timeout outlined in the technical requirements is reached.

You need to return the policy.

How should you build the method? (To answer, drag the appropriate code segments to the correct location or locations in the answer area. Each code segment may be used once, more than once, or not at all. You may need to drag the split bar between panes or scroll to view content.)

Answer:

Explanation:

http://msdn.microsoft.com/en-us/library/system.runtime.caching.cacheitempolicy.aspx

Leave a Reply

Your email address will not be published.