我一直听到的关于ASP.NET和MSFT技术的一件事是它们需要花钱才能使用.通常,当他们与开源语言进行比较时,有人会提到支持开源的一个因素是它是免费的(在某种程度上).我的问题是,ASP.NET何时在使用专有技术方面实际上需要花钱?
可以理解的是有托管费,但我很担心这些托管费之外的费用.我对此特别好奇,因为它涉及一人小型网站开发(非团队/大型企业).任何帮助表示赞赏.
(编辑)
一些很好的答案.非常感谢 我希望使用这些技术的项目将是个人网站和非常小的商业网站(1或2).当然,这意味着这些项目会变得更大.似乎对于商业生产,费用将适用.那些提供信息的基本动态"共享主机"网站呢?
考虑ITest使用covariant类型参数T的通用Test接口,实现接口的泛型类,以及类A和子类B:
interface ITest<out T>
{
T prop{ get;}
}
class Test<T> : ITest<T>
{
public T prop{ get {
return default(T);
}}
}
class A {
}
class B: A {
}
Run Code Online (Sandbox Code Playgroud)
以下代码编译时没有错误但会抛出运行时异常System.ArrayTypeMismatchException:
ITest<A>[] a = new ITest<A>[1];
a[0] = new Test<B>(); //<-- throws runtime exception
Run Code Online (Sandbox Code Playgroud)
但是这段代码运行得很好:
ITest<A> r = new Test<B>();
Run Code Online (Sandbox Code Playgroud)
这已经在Mono 2.10.2(Unity3d 4.1)上进行了测试.我认为这与数组中破坏的协方差有关(参见http://blogs.msdn.com/b/ericlippert/archive/2007/10/17/covariance-and-contravariance-in-c-part-two- array-covariance.aspx).
我不清楚为什么在分配数组插槽时发生的类型检查不考虑协方差.
使用.Net,与服务交互的最佳方式是什么(即大多数托盘应用程序如何与其服务器通信).如果这种方法也是跨平台的(在Mono中工作,那么我认为远程处理已经出来了?)
忘了提一下,我们仍然需要在现场支持Windows 2000机器,所以WCF和.Net 2.0以上的任何东西都不会飞.
我刚安装了新的MonoDevelop Windows测试版,但在尝试创建C#windows应用程序时,唯一的选择是GTK#.由于Mono支持WinForms,为什么这不是MonoDevelop的选项.我想在我的应用程序中没有GTK#依赖项.
MonoTouch似乎是iPhone开发的绝佳平台,但我担心将其部署到Apple Store.是否有任何使用iTunes构建的应用程序示例?
我们正在为iPhone启动一个新项目,并将整个堆栈保留在C#中会很棒,但我们不希望因为MonoTouch而被苹果商店拒之门外.
我已经阅读了几款目前使用单声道(非MonoTouch)用于3D图形的游戏,但是没有找到任何有关MonoTouch的内容.
我正在ASP MVC中开发一个网站,现在我必须显示统计数据和图表.我一直在阅读一些相关的帖子,在我看来,最好的选择似乎是:
我一直在审查它们,在我看来,微软图表的外观和感觉更好.另一方面,Google Chart具有在线优势.我真的不知道使用哪个.
我的问题是:
编辑:我在Mono/Linux中测试了Microsoft Charts并且工作正常(请参阅下面的答案).
我试图在Ubuntu机器上运行.NET exe(我安装了包mono-complete),到目前为止没有运气.该应用程序使用.NET 4(客户端配置文件)下的Visual C#Express 2010进行编译.
我尝试使用以下命令执行程序:
mono application.exe
Run Code Online (Sandbox Code Playgroud)
但是,我收到以下错误:
警告:此应用程序支持的运行时版本不可用.使用默认运行时:v1.1.4322
**(application.exe:5586):警告**:程序集中缺少方法System.Windows.Forms.Application :: SetCompatibleTextRenderingDefault(bool)/usr/lib/mono/gac/System.Windows.Forms/1.0.5000.0__b77a5c561934e089 /System.Windows.Forms.dll,在程序集/media/disk/application.exe中引用
未处理的异常:System.MissingMethodException:找不到方法:'System.Windows.Forms.Application.SetCompatibleTextRenderingDefault'.
它假设使用的是.NET 4,而不是1,但我不知道如何设置它.我试过了
mono --runtime=4.0.30319.1 application.exe
Run Code Online (Sandbox Code Playgroud)
但这也不起作用.
任何帮助,将不胜感激.
为什么我得到这个错误
Unhandled Exception: Twitterizer.TwitterizerException: Error getting response stream (Write: The authentication or decryption has failed.): SendFailure ---> System.Net.WebException: Error getting response stream (Write: The authentication or decryption has failed.): SendFailure ---> System.IO.IOException: The authentication or decryption has failed. ---> Mono.Security.Protocol.Tls.TlsException: Invalid certificate received from server. Error code: 0xffffffff800b010a
at Mono.Security.Protocol.Tls.Handshake.Client.TlsServerCertificate.validateCertificates (Mono.Security.X509.X509CertificateCollection certificates) [0x00000] in <filename unknown>:0
at Mono.Security.Protocol.Tls.Handshake.Client.TlsServerCertificate.ProcessAsTls1 () [0x00000] in <filename unknown>:0
at Mono.Security.Protocol.Tls.Handshake.HandshakeMessage.Process () [0x00000] in <filename unknown>:0
at (wrapper remoting-invoke-with-check) Mono.Security.Protocol.Tls.Handshake.HandshakeMessage:Process ()
at Mono.Security.Protocol.Tls.ClientRecordProtocol.ProcessHandshakeMessage (Mono.Security.Protocol.Tls.TlsStream handMsg) [0x00000] …Run Code Online (Sandbox Code Playgroud) 下面的过程在我的膝上型Alienware MX11R3上完美运行
http://download.mono-project.com/sources/mono/mono-3.4.0.tar.bz2
Run Code Online (Sandbox Code Playgroud)
tar -xjvf mono-3.4.0.tar.bz2
Run Code Online (Sandbox Code Playgroud)
cd mono-3.4.0
./configure --prefix=/usr/local
make
sudo make install
Run Code Online (Sandbox Code Playgroud)
sudo apt-get install libglade2.0-cil-dev
sudo apt-get install gnome-sharp2
Run Code Online (Sandbox Code Playgroud)
cd /usr/lib/cli
sudo gacutil -i glib-sharp-2.0/glib-sharp.dll &&
sudo gacutil -i atk-sharp-2.0/atk-sharp.dll &&
sudo gacutil -i gdk-sharp-2.0/gdk-sharp.dll &&
sudo gacutil -i gtk-sharp-2.0/gtk-sharp.dll &&
sudo gacutil -i glade-sharp-2.0/glade-sharp.dll &&
sudo gacutil -i pango-sharp-2.0/pango-sharp.dll &&
sudo gacutil -i gnome-sharp-2.24/gnome-sharp.dll &&
sudo gacutil -i gconf-sharp-2.0/gconf-sharp.dll &&
sudo gacutil -i gnome-vfs-sharp-2.0/gnome-vfs-sharp.dll
Run Code Online (Sandbox Code Playgroud)
http://download.mono-project.com/sources/monodevelop/monodevelop-4.2.2-2.tar.bz2
Run Code Online (Sandbox Code Playgroud)
tar -xjvf …Run Code Online (Sandbox Code Playgroud) mono ×10
c# ×5
.net ×2
monodevelop ×2
.net-4.0 ×1
asp.net ×1
asp.net-mvc ×1
charts ×1
covariance ×1
git ×1
iphone ×1
linux ×1
open-source ×1
service ×1
twitterizer ×1
ubuntu ×1
winforms ×1
xamarin.ios ×1