net - ironpython c#
IronPython en ASP.NET MVC (3)
Actualmente estoy trabajando en esto. Ya es compatible con muchas cosas: https://github.com/simplic-systems/ironpython-aspnet-mvc
más información sobre esto:
Importar el módulo aspnet
import aspnet
Puedes escribir tu propio controlador
class HomeController(aspnet.Controller):
def index(self):
return self.view("~/Views/Home/Index.cshtml")
Puedes registrar automáticamente todo el controlador
aspnet.Routing.register_all()
Puedes usar diferentes métodos http
@aspnet.Filter.httpPost
def postSample(self):
return self.view("~/Views/Home/Index.cshtml")
Y hay mucho mas. Aquí hay un ejemplo muy breve
# ------------------------------------------------
# This is the root of any IronPython based
# AspNet MVC application.
# ------------------------------------------------
import aspnet
# Define "root" class of the MVC-System
class App(aspnet.Application):
# Start IronPython asp.net mvc application.
# Routes and other stuff can be registered here
def start(self):
# Register all routes
aspnet.Routing.register_all()
# Set layout
aspnet.Views.set_layout(''~/Views/Shared/_Layout.cshtml'')
# Load style bundle
bundle = aspnet.StyleBundle(''~/Content/css'')
bundle.include("~/Content/css/all.css")
aspnet.Bundles.add(bundle)
class HomeController(aspnet.Controller):
def index(self):
return self.view("~/Views/Home/Index.cshtml")
def page(self):
# Works also with default paths
return self.view()
def paramSample(self, id, id2 = ''default-value for id2''):
# Works also with default paths
model = SampleModel()
model.id = id
model.id2 = id2
return self.view("~/Views/Home/ParamSample.cshtml", model)
@aspnet.Filter.httpPost
def postSample(self):
return self.view("~/Views/Home/Index.cshtml")
class SampleModel:
id = 0
id2 = ''''
class ProductController(aspnet.Controller):
def index(self):
return self.view("~/Views/Product/Index.cshtml")
¿Alguien ha intentado ASP.NET MVC usando IronPython? Después de haber hecho un montón de desarrollo de Python recientemente, sería bueno continuar con el lenguaje a medida que avanzo en un posible proyecto ASP.NET MVC.
Estoy especialmente interesado en explotar los aspectos dinámicos de Python con características .NET como LINQ y quiero saber si esto será posible. La otra ruta que puede ser viable para cierta programación dinámica sería C # 4.0 con su palabra clave dynamic
.
Pensamientos, experiencias?
Sí, hay un ejemplo de MVC del equipo de DLR .
También podría estar interesado en Spark .
Usando IronPython en ASP.NET MVC: http://www.codevoyeur.com/Articles/Tags/ironpython.aspx
esta página contiene los siguientes artículos:
- Un IronPython ControllerFactory simple para ASP.NET MVC
- Un IronPython ActionFilter simple para ASP.NET MVC
- Un simple IronPython Route Mapper para ASP.NET MVC
- Un IronPython ViewEngine discreto para ASP.NET MVC