MVC 4 Mobile Display Mode Doesn't work after deployment? - asp.net-mvc

I am using MVC4 mobile display mode.
It works perfectly locally - if I use a user agent switcher it switches to mobile as expected.
As soon as I deploy it to my live IIS server it doesn't ever go to the mobile view on a phone or with user agent switched.
The server has .Net 4.5 on it and the site is using .Net 4 integrated for its app pool. (So doesn't seem to be this ASP.NET MVC4 mobile site displays correctly on local host not deployment server)
Any other ideas?

If anyone else has this issue make sure you check that the view is being deployed to the live server. It wasn't marked as Content for me so wasn't being dployed. I guess because I copied it into the project.
Anyway simple error on my part.

Related

I can't get my AspNet project to run in https

I have an AspNet, .Net Framework 4.8 project, that was recently updated from 4.6.1 .Net Framework.
While trying to integrate 'Sign In With Microsoft' using OpenIDConnect, I downloaded a Quick Start app from Azure's App Registration, and out of the box this app runs on https://localhost:44368
Both apps have Enable SSL = True. Not sure why the Sample app doesn't have any problem.
Any clues on things to look for? I haven't tested rolling out to our Test Server, but I need to be able to debug also. I can start with an http page and our app starts fine.
Thanks
Project Url For Sample App vs My App

Access a Qlikview dashboard on an iOS app

I have a Qlikview dashboard that I need to present and I've created a site that loads the Qlikview server onto the browser and runs it from there.
I now need to create an iOS app that does this. But the requirement is that the dashboard shouldn't open on the browser. The server should be loaded and run from the app itself. Is there any way to do this?
PS, I'm completely new to iOS App development and any help will be appreciated.
Yes. While saving it as a shortcut and opening it in the browser would be simple, using Apache Cordova is the best way to develop a smartphone app with HTML5/CSS/JavaScript. From the website:
When using the Cordova APIs, an app can be built without any native
code (Java, Objective-C, etc) from the app developer. Instead, web
technologies are used, and they are hosted in the app itself locally
(generally not on a remote http server).
And to make things better, it's open source.

Web View loads page for built application, but not test flight deployed version

We've just been developing an update for our iOS application where we need to open up a web view and display a web page hosted on a 3rd party site. This has worked locally when building directly to a device using xCode, the application works as expected; the web page loads and we can interact with it as expected. However, if we build the application and deploy to test flight, on the same device the webview functionality no longer works. Everything else works as expected but when the webview opens it just stays blank - the web page doesn't load/display. It's the same device, the same code base and same 3rd party link, so the only difference is the provisioning profile we're using (dev vs ad-hoc). Looking in application services I can't see any thing that looks like we should be setting (in fact our dev/ad-hoc provisioning profiles have the same settings). We are looking to see if there is any event we can hook into to get more detail but the application isn't crashing. Has anyone come across something similar before or point us in a direction/area that could help throw more light on the problem (might be searching for the wrong thing, but not found anything on google / stackoverflow).
In the end this appears to be down to a difference in the execution of the code when built and when deployed (maybe deployed is faster). We traced that all the relevant calls were being made using Charles proxy and looking in somme logging we had running on the web server. To try and find out where the code was getting to we added "alert boxes" - with these in place both versions displayed the web page correctly (locally built and deployed through test flight). As we couldn't leave the alert boxes in :) the solution was to move where we set up the web call and also to programmatically create the web view, rather than using one attached to the XIB. Still haven't got to the bottom of what exactly was happening.

Do PhoneGap/Cordova Apps run under HTTP?

I'm coming behind another developer who built a PhoneGap/Cordova HTML 5 application, currently only targeting IOS. Admittedly, I have zero experience with Cordova and hybrid mobile apps.
I can open up the XCode IDE and run the application and I can see the web page (application) load up in the iPad emulator, so long as I have his Node.js application running.
I guess I'm confused about the context in which the actual index.html that makes up the HTML 5 application runs. Does it run on the iPad under a mini web server (http://local or http://localhost) or does the index.html run on a file system path (something like file://path-to-file/index.html)?
I've used Icenium (Telerik AppBuilder) and created an empty project for which I copied all the HTML 5 code into and ran it. Upon inspecting/debugging the page in the emulator, I see that the page is being served up with a base URL of http://local.
Lastly, I simply tried opening the index.html by double-clicking it and running it in the browser (file:///...builds/ios/www/index.html), and the application didn't work
In summary, as long as I run the website in an emulator, the application loads and runs file, but it won't run loading it from the file system.
My assumption is the scripts are expecting an http base URL and the file:/// url is throwing it off. Does this sounds like a reasonable explanation?
Do Cordova apps run the HTML 5 apps under HTTP?
Thank you.
they run on a file system path (something like file://path-to-file/index.html)
if you are using something from the phonegap API it won't work on a desktop browser

Mixed content message when all looks to be over SSL?

I'm working on an ASP.NET MVC5 app, upgraded from MVC3, to 4, and now to 5.
I deployed it to an internal IIS 7.5 server that has a wildcard cert on it. The CA is an enterprise trusted root by domain group policy.
When I load my site, I'm expecting a nice green lock icon in Google Chrome, but instead I get:
In the Chrome developer tools, on the Network screen, I'm looking at all the resources that were collected by the browser. Each one is going over HTTPS.
Why am I getting this error?
Well, it looks like something weird happened in Chrome. I shut down all my browser windows, and when I started the site back up again, all was well and I got my green lock icon.

Resources