Je vais écrire un serveur web en C# qui peut gérer les requêtes ASP. comment puis-je le faire?Comment faire pour exécuter un fichier asp en tant que serveur web en C#?
Répondre
Le temps d'exécution ASP.Net peut être accueilli par tout processus que vous feriez comme, et c'est en fait assez simple à faire. La clé consiste à utiliser la classe HttpRuntime.
De ma réponse sur le fil « Hidden Features of ASP.Net »:
public class HostingClass : MarshalByRefObject
{
public void ProcessPage(string url)
{
using (StreamWriter sw = new StreamWriter("C:\temp.html"))
{
SimpleWorkerRequest worker = new SimpleWorkerRequest(url, null, sw);
HttpRuntime.ProcessRequest(worker);
}
// Ta-dah! C:\temp.html has some html for you.
}
}
Et puis dans votre classe serveur web:
HostingClass host = ApplicationHost.CreateApplicationHost(typeof(HostingClass),
"/virtualpath", "physicalPath");
host.ProcessPage(urlToAspxFile);
Il est évident que ce n'est pas vraiment un serveur web, mais ce qu'il montre est le le traitement d'une requête pour une page aspx, l'analyse de la page et le vidage du résultat dans un fichier texte. Pour écrire un vrai serveur, vous devez évidemment écouter et accepter les requêtes provenant des connexions de socket, mais le fait est que vous pouvez facilement tirer parti du runtime asp.net pour cranquer vos pages pour vous et écrire toutes vos requêtes. propre logique pour savoir comment les servir.
Comme d'autres l'ont demandé, vous devriez utiliser le serveur Visual Studio intégré ou d'autres serveurs Web comme IIS ou Apache.
Si vous cherchez à apprendre les bases (d'un point de vue éducatif), vous pouvez consulter ici l'échantillon:
- 1. BES doute en tant que serveur web
- 2. exécuter en tant que collection
- 3. .NET en tant que client, Java en tant que serveur
- 4. Puis-je exécuter un script Python en tant que service?
- 5. Comment exécuter un exécutable incorporé en tant que ressource
- 6. Comment faire une application wpf en tant que serveur OLE
- 7. Comment shell exécuter un fichier en C#?
- 8. Comment configurer Apache & php exécuter en tant que super-utilisateur
- 9. Est-il possible de faire exécuter un fichier Bash en tant que root dans crontab?
- 10. Comment faire pour exécuter la commande sudo en tant que root?
- 11. PHP: Comment exécuter readdir() en tant que root
- 12. C# - comment faire fonctionner l'application en tant que service?
- 13. Comment définir Tomcat ou JBOSS ou Glassfish en tant que serveur d'applications pour un projet Web GWT en eclipse
- 14. Comment faire pour Checkbox en tant que ColumnHeader de dataGridView
- 15. iphone exécuter l'application en tant que root
- 16. OAuth en C# en tant que client
- 17. Exécuter un programme en tant que thread et non en tant que processus
- 18. Pourquoi exécuter une application Rails en tant que serveur WEBrick, mais ne pas l'installer en tant que service Mongrel?
- 19. Comment télécharger un fichier .txt en tant que fichier .rtf en C#?
- 20. Exécuter l'application Windows en tant que service?
- 21. Comment faire pour exécuter une chaîne en tant que commande dans Visual Basic (VB.NET)
- 22. Application OpenGL C++ en tant que service web
- 23. Exécuter une chaîne en tant que commande en python
- 24. Comment exécuter les méthodes os. * En tant que root?
- 25. Comment empêcher asp: FormView de rendre en tant que table?
- 26. Comment faire pour qu'un fichier .myhtml ait des couleurs en tant que fichier html dans vim?
- 27. enregistrer le fichier en tant que lob ou en tant que fichier OS?
- 28. Eclipse en tant que fichier téléchargeur sur le serveur
- 29. Puis-je télécharger un fichier sur une API Web à l'aide d'un fichier Web en tant que source en streaming?
- 30. Application en tant que serveur Win Service 2003
Y a-t-il une raison pour laquelle vous ne pouvez pas utiliser le serveur Microsoft ASP.NET existant? –
troll anyone? ... –
Pourquoi? C'est pire que de réinventer la roue. –