@@ -1208,18 +1208,47 @@ public async Task ShouldSupportLightweightRootWithMaximumFuncArguments()
12081208 namespace Sample;
12091209
12101210 interface IService { int Sum { get; } }
1211- class Service(Func<int, int, int, int, int, int, int, int, int, int, int, int, int, int, int, int> sum) : IService
1212- {
1213- public int Sum { get; } = sum(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15);
1211+ class Service(
1212+ [Tag("a1")] int a1,
1213+ [Tag("a2")] int a2,
1214+ [Tag("a3")] int a3,
1215+ [Tag("a4")] int a4,
1216+ [Tag("a5")] int a5,
1217+ [Tag("a6")] int a6,
1218+ [Tag("a7")] int a7,
1219+ [Tag("a8")] int a8,
1220+ [Tag("a9")] int a9,
1221+ [Tag("a10")] int a10,
1222+ [Tag("a11")] int a11,
1223+ [Tag("a12")] int a12,
1224+ [Tag("a13")] int a13,
1225+ [Tag("a14")] int a14,
1226+ [Tag("a15")] int a15)
1227+ : IService
1228+ {
1229+ public int Sum { get; } =
1230+ a1 + a2 + a3 + a4 + a5 + a6 + a7 + a8 + a9 + a10 + a11 + a12 + a13 + a14 + a15;
12141231 }
12151232
12161233 partial class Composition
12171234 {
12181235 void Setup() => DI.Setup(nameof(Composition))
12191236 .Hint(Hint.Resolve, "Off")
1220- .Bind<Func<int, int, int, int, int, int, int, int, int, int, int, int, int, int, int, int>>()
1221- .To(_ => (a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15) =>
1222- a1 + a2 + a3 + a4 + a5 + a6 + a7 + a8 + a9 + a10 + a11 + a12 + a13 + a14 + a15)
1237+ .RootArg<int>("a1", "a1")
1238+ .RootArg<int>("a2", "a2")
1239+ .RootArg<int>("a3", "a3")
1240+ .RootArg<int>("a4", "a4")
1241+ .RootArg<int>("a5", "a5")
1242+ .RootArg<int>("a6", "a6")
1243+ .RootArg<int>("a7", "a7")
1244+ .RootArg<int>("a8", "a8")
1245+ .RootArg<int>("a9", "a9")
1246+ .RootArg<int>("a10", "a10")
1247+ .RootArg<int>("a11", "a11")
1248+ .RootArg<int>("a12", "a12")
1249+ .RootArg<int>("a13", "a13")
1250+ .RootArg<int>("a14", "a14")
1251+ .RootArg<int>("a15", "a15")
12231252 .Bind<IService>().To<Service>()
12241253 .Root<IService>("Create", kind: RootKinds.Light);
12251254 }
@@ -1229,7 +1258,7 @@ class Program
12291258 static void Main()
12301259 {
12311260 var composition = new Composition();
1232- Console.WriteLine(composition.Create.Sum);
1261+ Console.WriteLine(composition.Create(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15) .Sum);
12331262 }
12341263 }
12351264 """ . RunAsync ( new Options ( LanguageVersion . Preview ) ) ;
0 commit comments