标签: monodevelop

谁将app.config复制到app.exe.config?

我正在编写一个游戏开发IDE,用于创建和编译.NET项目(我过去几年一直在研究),并且我正在更新它以生成输出,不仅适用于Windows/Visual Studio,还适用于对于Linux/MonoDevelop(一个非常简单的.NET进程,但仍然需要一些调整).

作为其中的一部分,我发现有必要开始生成app.config文件作为其中的一部分,以将依赖的DLL名称映射到具有<dllmap>元素的Linux依赖项名称.我很担心谁负责将app.config文件复制到输出名称app.exe.config.在Visual Studio项目中,app.config的Build Action通常设置为"None",其设置表明它不会被复制到任何地方,但是当Visual Studio编译项目时它会生成app.exe.config(虽然我有时发现这是不可靠的).当我使用MSBuild构建IDE生成的解决方案文件(用于调试目的)时,MSBuild将app.config复制到app.exe.config.但是当我使用CSharpCodeProvider.CompileAssemblyFromFile编译项目时(自然而然)并没有 像配置文件作为源代码包含("app.config(1,1):错误CS0116:命名空间不直接包含诸如字段或方法之类的成员"),当然它不会将其复制到当我不将它作为输入包括时输出.我是否有责任单独将app.config复制到app.exe.config,或者有更标准的方法吗?

是否硬连线采用第一个*.config文件?在我的IDE中,可以想象app.config文件将被重命名或添加另一个(就像在Visual Studio中一样).我觉得IDE对配置文件有这个秘密行为似乎很奇怪(我认为MonoDevelop在这方面表现相似,因为我找不到配置文件的特殊操作).我不知道它甚至会选择这个秘密行动适用的文件.

.net c# monodevelop visual-studio

14
推荐指数
3
解决办法
2万
查看次数

如何在MonoTouch中启用iPhone设置(包,plist)

我正在尝试使用MonoTouch/MonoDevelop 在一个小型测试应用程序中运行iPhone设置.它可能是Xcode中的超级基础/基础......

... ...但是我没有立即看到如何做到在MonoTouch的例子,后一点阅读猜到是一位Settings.bundle在包含一个我的MonoDevelop解决方案的根文件夹中root.plist的XML文件应该工作.

有点 - 我的应用程序现在出现设置窗口 - 但实际输入没有显示.我已经尝试了一些不同的东西plist(来自谷歌和开始的iPhone开发书)但到目前为止没有运气.

有人能指出我错过了什么:要么是MonoTouch解决方案/构建过程中的一步还是错误我root.plist文件的格式/内容?

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Title</key>
    <string>iSOFlair</string>
    <key>StringsTable</key>
    <string>Root</string>
    <key>PreferenceSpecifiers</key>
    <array>
        <dict>
            <key>Type</key>
            <string>PSTextFieldSpecifier</string>
            <key>Title</key>
            <string>User Id</string>
            <key>Key</key>
            <string>soUserId</string>
            <key>AutocapitalizationType</key>
            <string>None</string>
            <key>AutocorrectionType</key>
            <string>No</string>
        </dict>
    </array>
</dict>
</plist>
Run Code Online (Sandbox Code Playgroud)

iphone monodevelop xamarin.ios

14
推荐指数
1
解决办法
4499
查看次数

为什么没有给这个未使用的变量发出警告?

在VS2010,VS2008或Windows上的MonoDevelop中编译以下程序时,我收到警告CS0219,"已分配变量'y',但从未使用过它的值".

namespace Problem
{
    public class Program
    {        
        private static void Main(string[] args)
        {
            object x = new object();
            int y = 0;
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

为什么x在Visual Studio中编译时没有警告?

有趣的是,我得到了CS0219警告x ,并 y在Mac OS X中的MonoDevelop编译时

c# warnings monodevelop visual-studio

14
推荐指数
1
解决办法
5508
查看次数

使用"X"进行十六进制格式化时的FormatException

我从HexConverter中获取了以下代码- 统一社区Wiki

string hex = color.r.ToString("X2") + color.g.ToString("X2") + color.b.ToString("X2");
Run Code Online (Sandbox Code Playgroud)

这给了我一个例外:

FormatException: The specified format 'X2' is invalid
Run Code Online (Sandbox Code Playgroud)

我尝试使用,"D"但即使这样也犯了错误.唯一有效的是"F格式化浮点数.

转到声明显示汇编浏览器中的mscorlib.dll/System/Single.ToString(字符串) - 到目前为止听起来不错.

谷歌搜索monodevelop字符串格式十六进制或类似的搜索字符串没有显示有关MonoDevelop限制的任何有趣的东西.

那么有什么准备,初始化,...之前我可以得到一个简单的十六进制值转换?

[更新] 颜色是Unity中的结构:

public struct Color
{
    public float r;
    public float g;
    public float b;
    // ...
Run Code Online (Sandbox Code Playgroud)

采取dtb的答案我终于使用它:

    int r = (int)(color.r * 256);
    int g = (int)(color.g * 256);
    int b = (int)(color.b * 256);
    string hex = string.Format ("{0:X2}{1:X2}{2:X2}", r, g, b);
Run Code Online (Sandbox Code Playgroud)

所以我错过了Color …

c# string-formatting monodevelop unity-game-engine

14
推荐指数
1
解决办法
5390
查看次数

mono中的system.web功能缺失了吗?

我需要HttpUtility来编码字符串,但它似乎得到了支持,但不再支持.实际上,整个System.Web都没了.

还有其他选择吗?我需要Javascript Escape一些字符串.

monodevelop xamarin.ios system.web html-escape-characters

13
推荐指数
1
解决办法
6644
查看次数

Visual Studio项目到MonoDevelop

有没有办法将Visual Studio项目传输到MonoDevelop环境?在常见问题- MonoDevelop中有人说:

MonoDevelop可以直接在mopst情况下打开,操作和保存基于MSBuild的项目.事实上,由于MonoDevelop 2.0的默认项目格式已经是VS2008风格的MSBuild项目,但VS2005和VS1010格式也在处理中.

但是当我尝试在MonoDevelop中打开我的(ASP.NET Web应用程序).vbproj时,我得到:

加载操作失败.Project不支持框架'.NETFramework,Version = v4.0'.

我应该改变项目设置,允许不同的.NETFramework版本,还是必须使用一些第三方软件来翻译我的项目配置文件?

编辑:(已解决)如果您的项目还不是那么大,请使用.NET Framework 3.5在Microsoft Visual Studio(MVS)中创建一个新项目,然后可以使用MonoDevelop打开它,否则编辑您的项目Debug/Release配置文件并删除有关此项目的"4.0"信息的所有内容,加上以前的.vbproj文件不起作用并执行相同操作,搜索4.0信息.(适用于框架4.0)

要么

按照此处的说明更改项目设置:http: //msdn.microsoft.com/en-us/library/bb398202.aspx

monodevelop visual-studio

13
推荐指数
1
解决办法
2万
查看次数

无法在MonoDevelop中遇到断点

在我的archlinux系统上,我做了一个全新的安装:

  • mono 3.0.7
  • monodevelop 4.0.8
  • monodevelop-debugger-gdb 4.0

当我调试应用程序时,调试器不会在断点上停止,即使不在System.Diagnostics.Debugger.Break ();代码上停止.
并显示错误窗口,并显示以下消息:

Could not connect to the debugger
Run Code Online (Sandbox Code Playgroud)

有谁知道如何修理它?

debugging mono monodevelop archlinux

13
推荐指数
3
解决办法
6391
查看次数

Xamarin IDE访问路径被拒绝

我正在移植一个包含许多项目的Visual Studio C#解决方案,并在Xamarin IDE中创建一个新的解决方案 - 所有这些都在Windows上.

我一次移植/重新创建一个项目,然后进行编译.我可以单独编译每个项目,然后我可以编译解决方案(有一些错误).
如果我尝试全部重建,则会出现问题,然后显示错误:

'Access to the path "[my build path\some.dll]" is denied.'
Run Code Online (Sandbox Code Playgroud)

我有完整的管理员权限,正如我所提到的,我最初可以构建dll,因此它不是访问问题.
如果我试图删除有问题的dll,我不能 - 窗口否认我.
如果我关闭Xamarin,我可以手动删除该文件.因此,我认为,Xamarin仍然对文件进行"锁定",不允许将其删除.

有没有人看过这个,如果有的话,你是怎么绕过它的?

如果这是一个错误,那么这使得它几乎无法使用.

c# windows monodevelop xamarin xamarin-studio

13
推荐指数
1
解决办法
8530
查看次数

Unity3D新UI系统和列表视图

我正在尝试使用新的Unity UI(2014)构建列表视图.垂直和可滚动列表应包含图像按钮,这些按钮应根据其指定的图像保留其纵横比!所有按钮都应拉伸到屏幕宽度.按钮不应与下一个按钮有间隙.(非常像iOS中的UITableView)

在此输入图像描述

我发现新UI附带的VerticalLayoutGroup对我没有帮助,因为它不能很好地嵌入ScrollRect中.我认为它需要根据包含的项目进行调整,以使其与ScrollRect一起使用.

另一个问题是我无法让按钮保持其宽高比,我通过编写一个小脚本解决了这个问题(见下文).

为了实际完成所需的列表效果,我创建了一个带有ScrollRect的Canvas,然后包含一个用于我的自定义ListLayout脚本的RectTransform.RectTransforms的子节点是按钮.

结构如下所示:

在此输入图像描述

列表中的每个项都会获得一个keep aspect脚本,如下所示:

public class KeepAspect : MonoBehaviour {

    public Sprite sprite;
    public float aspect = 1;

    void Start() {
        if (sprite != null) {
            aspect = sprite.bounds.size.x / sprite.bounds.size.y;
        }
    }

    void Update() {
        RectTransform rectTransform = GetComponent<RectTransform>();
        Rect rect = rectTransform.rect;
        rectTransform.sizeDelta = new Vector2(rect.width, rect.width * (1f / aspect));
    }
}
Run Code Online (Sandbox Code Playgroud)

我的自定义ListLayout脚本,根据包含的项目计算其高度:

public class ListLayout : MonoBehaviour {

    public enum Direction { Vertical, Horizontal }

    public Direction direction = Direction.Vertical;
    public float …
Run Code Online (Sandbox Code Playgroud)

c# user-interface listview monodevelop unity-game-engine

13
推荐指数
1
解决办法
2万
查看次数

在ubuntu 16.04上安装"monodevelop"IDE后找不到asp.net模板

我目前在mono官方网站上安装了mono-complete和monodevelop,并在下面输入了这些命令

 sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF echo "deb http://download.mono-project.com/repo/debian wheezy main" | sudo tee /etc/apt/sources.list.d/mono-xamarin.list sudo apt-get update

 sudo apt-get install mono-complete

 sudo apt-get install monodevelop
Run Code Online (Sandbox Code Playgroud)

在我的ubuntu 16.04上,但是当我打开monodevelop IDE并尝试创建一个新的解决方案时,找不到预期的asp.net模板,因此我不允许创建像asp.net mvc这样的web项目!我得到的唯一模板就是这个

之后,我从synaptic中删除了单声道包,并再次从ubuntu软件中心重新安装它,但我得到了相同的结果

当我运行sudo apt-get update时,这就是我在终端中得到的

W: gpgv:/var/lib/apt/lists/ppa.launchpad.net_ermshiperete_monodevelop-beta_ubuntu_dists_xenial_InRelease: The repository is insufficiently signed by key 6F242C166A1B440BA3C43CBD48B6803E839ECBBE (weak digest)
W: gpgv:/var/lib/apt/lists/download.mono-project.com_repo_debian_dists_wheezy_InRelease: The repository is insufficiently signed by key 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF (weak digest)
Run Code Online (Sandbox Code Playgroud)

c# asp.net monodevelop ubuntu-16.04

13
推荐指数
3
解决办法
7259
查看次数