Question: I am currently trying to make a wheel progress bar show while the web view is currently loading. Having some troubles with my code. Any idea on what is wrong or missing with my code?

```
 protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        getWindow().requestFeature(Window.FEATURE_INDETERMINATE_PROGRESS);
        setContentView(R.layout.activity_main);

```

This is my code on the web view part.

```
setProgressBarIndeterminateVisibility(true);
    wv1 = (WebView)findViewById(R.id.wv1);
    wv1.getSettings().setJavaScriptCanOpenWindowsAutomatically(false);
    wv1.getSettings().setSupportZoom(false);
    wv1.getSettings().setSupportMultipleWindows(false);
    wv1.setHorizontalScrollBarEnabled(false);
    wv1.setVerticalScrollBarEnabled(false);
    wv1.getSettings().setUseWideViewPort(true);
    wv1.getSettings().setLoadWithOverviewMode(true);

    final Activity activity = this;

    wv1.setWebViewClient(new WebViewClient() {
        public boolean shouldOverrideUrlLoading(WebView viewx, String urlx) {
            viewx.loadUrl(urlx);
            return false;
        }

        public void onProgressChanged (WebView view, int progress){
            activity.setTitle("Loading..");
            activity.setProgress(progress * 100);

            if (progress == 100) 
                setProgressBarIndeterminateVisibility(false);
            activity.setTitle("My Title");
        }
    }

            );

    wv1.loadUrl(nFeed); 

```

Answer: 
We are automatically assuming that the problem is the EF. Can be, can be not. There are a lots of points that we should take care, not only data access infrastructure.

With data access issued, as you are using only EF, you can gain fast improvement using simple `.AsNoTracking()` method. Adopt a [ServiceLocator](http://commonservicelocator.codeplex.com/) to help you manage your contexts pool.

You can also user [Dapper](https://github.com/StackExchange/dapper-dot-net), instead of EF, in ReadOnly situations.

And for last, but not least, use pure ADO.NET, for the more complex queries and a fastest execution.

Refactor your [ActionFilters](http://msdn.microsoft.com/en-us/library/dd410209) to avoid using some "BaseController" that all controllers inherits is a good practice either.

Check if your IDisposable classes are truly being supressed by CG, adopting the `.Dispose(bool)` pattern.

Be sure that you are not persisting cache variables for eternity, that will only be released by application pool recycle.

That are just tips, but the hard work will be with you, that have code access. :)

Good luck!
Check if you have proxy entities stored in session. In the other hand it's not required to call explicitly `Dispose()` in `DbContext`.
Check this <http://blog.jongallant.com/2012/10/do-i-have-to-call-dispose-on-dbcontext.html#.U6WdzrGEeTw>