0

例如,当我添加一个新表时,它不会出现在 Northwind 命名空间中,直到我从以下位置删除项目文件夹:C:\Users\userName\AppData\Local\Temp\Temporary ASP.NET Files\

或添加并读取 SubSonic.dll

我有以下配置:

    <configSections>
      <section name="SubSonicService" type="SubSonic.SubSonicSection, SubSonic"></section>

....

  <SubSonicService defaultProvider="Northwind">
    <providers>
      <clear/>
      <add name="Northwind" 
           type="SubSonic.SqlDataProvider, SubSonic" 
           connectionStringName="Northwind" 
           generatedNamespace="Northwind"/>
    </providers>
  </SubSonicService>

  <connectionStrings>
    <add name="Northwind" connectionString="Data Source=.;Database=Northwind;Integrated Security=true;"/>
  </connectionStrings>  

....
        <compilation debug="true">

          <buildProviders>
            <add extension=".abp" type="SubSonic.BuildProvider, SubSonic"/>

          </buildProviders>
...


      <pages>
        <controls>
                    <add assembly="SubSonic" namespace="SubSonic" tagPrefix="subsonic"/>
4

2 回答 2

3

这里的问题是除非您更改 App_Code 中的 abp 文件,否则 BuildProvider 不会“关闭”。这是一个 hack,但如果你想让它工作,你需要打开该文件并通过添加空格或其他东西以某种方式更改它 - 然后它将启动构建器。

我正在处理一些 T4 模板,因此您不必这样做。此外 - 您可以使用我们的命令行工具为您生成要归档的内容:http: //subsonicproject.com/subcommander/using-the-command-line-tool-subcommander/

于 2009-06-03T18:02:52.887 回答
0

谢谢,两者都有效!

正如您所说,只需更改 *.abp 文件(添加了几个空格)

或者

sonic.exe 生成 /config "D:\path\to\my\web.config"

PS 我有一个 D:\temp\utils 文件夹,其中保存了所有使用的命令行工具......它是 %PATH% 环境变量的一部分......我花了几分钟才意识到我有复制整个:

D:\libs\orm\SubSonic_2.1_Final_Source\src\SubSonic\bin\Debug 目录到该命令行工具文件夹...

编辑:使用 VS 外部工具命令更快:工具 - 外部工具 - 添加标题:SubSonic 命令:D:\path\to\sonic.exe 参数:生成 /config "D:\path\to\my\web.config"初始目录:{$ProjectDir}

工具 - 选项 - 键盘 查找工具 亚音速

让它可以在命令行的任何地方工作

于 2009-06-04T10:10:49.600 回答